หน้าแรก
หน้าแรก
อย่างที่เราทราบ ฟังก์ชันทั้งสองถูกใช้เพื่อค้นหาสตริงจากอาร์กิวเมนต์ที่ให้ไว้ แต่มีข้อแตกต่างที่สำคัญบางประการดังนี้ − FIND_IN_SET() − ฟังก์ชั่นใช้รายการสตริงที่ตัวเองเป็นสตริงที่มีสตริงย่อยคั่นด้วยเครื่องหมายจุลภาค ในขณะที่ฟังก์ชัน FIELD() มีรายการสตริงต่างๆ ซึ่งจะค้นหาหมายเลขดัชนีของสตริง หากมี ซึ
ฟังก์ชัน MySQL ELT() ส่งคืนค่า NULL เป็นเอาต์พุต หากหมายเลขดัชนีที่ระบุเป็นอาร์กิวเมนต์สูงกว่าจำนวนสตริง ต่อไปนี้เป็นตัวอย่างเพื่อให้ชัดเจนยิ่งขึ้น - ตัวอย่าง mysql> Select ELT(6,'Ram','is','a','good','boy')As Result; +--------+ | Result | +--------+ | NULL
ฟังก์ชัน MySQL ELT() ส่งคืนสตริงซึ่งอยู่ที่หมายเลขดัชนีที่ระบุในรายการอาร์กิวเมนต์ อาร์กิวเมนต์แรกจะเป็นดัชนีของสตริงที่จะดึงมาจากรายการอาร์กิวเมนต์ ไวยากรณ์ ELT(index number, str1, str2,…,strN) หมายเลขดัชนีที่นี่เป็นจำนวนเต็มและเป็นดัชนีของสตริงที่จะดึงข้อมูล และ str1, str2 ,…, strN เป็นสตร
ใน MYSQL เนื่องจากเราทราบว่าค่า ENUM แต่ละค่าเชื่อมโยงกับหมายเลขดัชนี พื้นฐานสำหรับการจัดเรียงค่า ENUM ก็คือหมายเลขดัชนีด้วย นอกจากนี้ หมายเลขดัชนีจะขึ้นอยู่กับลำดับที่สมาชิกการแจงนับถูกระบุไว้ในข้อมูลจำเพาะของคอลัมน์ ตัวอย่างเช่น ในคอลัมน์ ENUM (GOOD, EXCELLENT) GOOD จะเรียงลำดับก่อน EXCELLENT ในอี
ประเภทข้อมูล ENUM ซึ่งแตกต่างจากประเภทข้อมูลมาตรฐาน คือรายการที่มีการแจงนับ 1 ถึง 65,535 สตริง ซึ่งระบุค่าที่อนุญาตสำหรับฟิลด์ เมื่อกำหนด ENUM คุณกำลังสร้างรายการของรายการที่ต้องเลือกค่า (หรืออาจเป็น NULL) ตัวอย่างเช่น หากคุณต้องการให้ฟิลด์ของคุณมี A หรือ B หรือ C คุณจะต้องกำหนด ENUM ของคุณเป็น ENU
สำหรับการสร้างคอลัมน์ ENUM ค่าการแจงนับต้องเป็นตัวอักษรสตริงที่ยกมา เราสามารถสร้างคอลัมน์ ENUM ใน MySQL โดยใช้ไวยากรณ์ต่อไปนี้ - CREATE TABLE table_name( … Col ENUM(‘Value1’,’Value2’,’Value3’), … ); ในไวยากรณ์ข
NULL เป็นอาร์กิวเมนต์ทั้งสอง MySQL ส่งคืนเอาต์พุตว่างหากเราจะใช้ NULL เป็นอาร์กิวเมนต์ทั้งสองในฟังก์ชัน CONCAT_WS() ตัวอย่าง mysql> Select CONCAT_WS('',NULL,NULL); +-------------------------+ | CONCAT_WS('',NULL,NULL) | +-------------------------+ | &n
เมื่อเราใช้ฟังก์ชัน CONCAT_WS() กับส่วนคำสั่ง WHERE ผลลัพธ์จะขึ้นอยู่กับเงื่อนไขที่ให้ไว้ในส่วนคำสั่ง WHERE สามารถเข้าใจได้จากตัวอย่างตาราง “นักเรียน” ดังนี้ ตัวอย่าง mysql> Select CONCAT_WS(' ',Name, Last_name, 'Resident of', Address, 'is studying', Subject)AS 'Studen
ประเภท MySQL ENUM สามารถกำหนดได้ด้วยแอตทริบิวต์ต่อไปนี้ซึ่งส่งผลต่อค่าที่อนุญาต - ไม่เป็นโมฆะ - ในประเภท ENUM โดยค่าเริ่มต้น ค่า NULL จะได้รับอนุญาต ในการไม่อนุญาตค่า NULL เราจำเป็นต้องใช้แอตทริบิวต์ NOT NULL ในขณะที่อธิบายคอลัมน์ ENUM NULL − แอตทริบิวต์ NULL เป็นคำพ้องความหมายสำหรับ DEFAULT NULL
ที่จริงแล้ว องค์ประกอบที่ระบุไว้ในข้อกำหนดคอลัมน์ ENUM ถูกกำหนดหมายเลขดัชนีซึ่งขึ้นต้นด้วย 1 ในที่นี้ คำว่า ดัชนี หมายถึงตำแหน่งภายในรายการค่าการแจงนับ และไม่เกี่ยวข้องกับดัชนีตาราง ด้วยความช่วยเหลือของตัวอย่างต่อไปนี้ เราสามารถแสดงให้เห็นว่าการแจงนับ MySQL แต่ละรายการมีค่าดัชนี - โดยการใส่เลขดัชนีแ
เราสามารถใช้ฟังก์ชัน FIELD() เพื่อค้นหาตำแหน่งดัชนีของสตริงเฉพาะจากรายการสตริง ไวยากรณ์ FIELD(str search,String1, String2,…StringN) ในที่นี้ การค้นหา str คือสตริงที่มีหมายเลขดัชนีที่เราต้องการค้นหา และ String1, String …StringN คือรายการสตริงที่การค้นหาจะเกิดขึ้น ตัวอย่าง mysql> Select FIE
สมมติว่าสตริงการค้นหาไม่อยู่ในรายการสตริงที่ระบุเป็นอาร์กิวเมนต์ในฟังก์ชัน FIELD() แล้ว MySQL จะคืนค่า 0 เป็นเอาต์พุต ตัวอย่าง mysql> Select FIELD('Ram','New','Delhi'); +----------------------------+ | FIELD('Ram','New','Delhi') | +-----------------
ดังที่เราทราบดีว่า NULL ล้มเหลวในการเปรียบเทียบความเท่าเทียมกันกับค่าใดๆ ดังนั้นหากสตริงการค้นหาที่ระบุในฟังก์ชัน FIELD() เป็น NULL แล้ว MySQL จะส่งกลับ 0 เป็นเอาต์พุต ตัวอย่าง mysql> Select FIELD(NULL,'Ram','is','good','boy'); +-----------------------------------
ในกรณีที่อาร์กิวเมนต์ทั้งหมด (รายการสตริง) ของฟังก์ชัน FIELD() เป็น NULL แล้ว MySQL จะคืนค่า 0 เป็นเอาต์พุต ตัวอย่าง mysql> Select FIELD('Ram',NULL,NULL,NULL,NULL); +----------------------------------+ | FIELD('Ram',NULL,NULL,NULL,NULL) | +----------------------------------+ | &n
MySQL ช่วยให้เราสามารถส่งผ่านอาร์กิวเมนต์ที่เป็นตัวเลขไปยังฟังก์ชัน CONCAT() สามารถผ่านได้โดยไม่ต้องใช้เครื่องหมายคำพูด ตัวอย่าง mysql> Select Concat(10,20); +---------------+ | Concat(10,20) | +---------------+ | 1020 | +---------------+ 1 row in set (0.00 sec
สมมติว่าจากตาราง นักเรียน เราต้องการเชื่อมค่าของคอลัมน์ ชื่อ ที่อยู่ และ คอลัมน์ ตามเงื่อนไขที่เป็นการต่อกันของค่าจากคอลัมน์ ชื่อ หัวเรื่อง ระบุไว้ในส่วนคำสั่ง WHERE โดยใช้ฟังก์ชัน CONCAT() เราสามารถใช้แบบสอบถามต่อไปนี้เพื่อให้ผลลัพธ์ - mysql> Select CONCAT(Name, ' ', 'Resident of'
ดังที่เราทราบแล้วว่าฟังก์ชัน CONCAT() จะคืนค่า NULL หากอาร์กิวเมนต์ใดๆ ของมันคือ NULL หมายความว่า MySQL จะคืนค่า NULL หากเราส่งผ่านชื่อคอลัมน์ ที่มีค่า NULL เป็นหนึ่งในอาร์กิวเมนต์ของฟังก์ชัน CONCAT() ต่อไปนี้เป็นตัวอย่างตาราง นักเรียน ที่จะอธิบาย ตัวอย่าง ในตัวอย่างนี้ เรากำลังเชื่อมค่าของสองสตริง
ดังที่เราทราบดีว่าไวด์การ์ดเป็นอักขระที่ช่วยค้นหาข้อมูลที่ตรงกับเกณฑ์ที่ซับซ้อน Wildcards ใช้ร่วมกับตัวดำเนินการเปรียบเทียบ LIKE หรือตัวดำเนินการเปรียบเทียบ NOT LIKE MySQL ช่วยให้เราจับคู่ข้อมูลจากผลลัพธ์ของฟังก์ชัน CONCAT() ด้วยความช่วยเหลือของตัวแทนและตัวดำเนินการเปรียบเทียบ LIKE หรือ NOT LIKE ยกต
อย่างที่เราทราบดีว่า BLOB เป็นอ็อบเจกต์ขนาดใหญ่แบบไบนารีที่สามารถเก็บข้อมูลจำนวนตัวแปรได้ ออบเจ็กต์ TEXT ต่างๆ มีพื้นที่จัดเก็บตั้งแต่ 255 ไบต์ถึง 4 Gb ตารางต่อไปนี้แสดงการจัดเก็บข้อมูลประเภทต่าง ๆ ของ BLOB - ประเภทของ BLOB จำนวนข้อมูลสูงสุดที่สามารถจัดเก็บได้ โอเวอร์เฮด TINYBLOB สูงสุด 25
เราสามารถใช้ผลลัพธ์ของฟังก์ชัน CONCAT() ซึ่งใช้กับคอลัมน์/วินาทีของ MySQL กับคอลัมน์/วินาทีของตาราง MySQL อื่น สามารถทำได้ด้วยความช่วยเหลือของ MySQL เข้าร่วม ตัวอย่าง ตัวอย่างเช่น เรามีตาราง Student สองตารางซึ่งมีรายละเอียดเช่น id, Name, Last_name, Address และ Subjects ของนักเรียน และ Remarks มี id