หน้าแรก
หน้าแรก
ที่จริงแล้ว เมื่อแบบสอบถามย่อยของ MySQL เริ่มต้นที่ส่วนคำสั่ง FROM ชุดผลลัพธ์ที่สร้างขึ้นจะเรียกว่าตารางที่ได้รับ แบบสอบถามย่อยประเภทดังกล่าวที่สร้างตารางที่ได้รับจะเรียกว่าข้อความค้นหาย่อยที่เป็นรูปธรรม สามารถเข้าใจได้ด้วยความช่วยเหลือของตัวอย่างต่อไปนี้ซึ่งใช้ข้อมูลจากตาราง รถยนต์ - mysql> Sel
หากเคียวรีย่อยซ้อนอยู่ภายในเคียวรีย่อยอื่น จะเรียกว่าเคียวรีย่อยที่ซ้อนกัน เพื่อให้เข้าใจว่าเรากำลังสร้างแบบสอบถามย่อยที่ซ้อนกันจากข้อมูลตารางต่อไปนี้ - mysql> Select * from Cars; +------+--------------+---------+ | ID | Name | Price | +------+-----------
แบบสอบถามย่อยแถวเดียว คิวรีย่อยแบบแถวเดียวจะใช้เมื่อผลลัพธ์ของคิวรีภายนอกอิงตามค่าเดียวที่ไม่รู้จัก แม้ว่าคิวรีประเภทนี้จะเรียกอย่างเป็นทางการว่า แถวเดียว แต่ชื่อก็บอกเป็นนัยว่าคิวรีส่งกลับหลายคอลัมน์ แต่มีผลลัพธ์เพียงแถวเดียว อย่างไรก็ตาม คิวรีย่อยแบบแถวเดียวสามารถส่งคืนผลลัพธ์ได้เพียงแถวเดียวซึ่ง
หลังจากเขียนบรรทัดแรกของข้อความค้นหาหลายบรรทัดแล้ว MySQL จะเปลี่ยนจาก ทันที เป็น ‘→’. มันมีความสำคัญเพราะด้วยความช่วยเหลือนี้ เราจึงได้ข้อบ่งชี้ว่า MySQL ยังไม่เห็นคำสั่งที่ครบถ้วนสมบูรณ์และกำลังรอส่วนที่เหลืออยู่ พิจารณาตัวอย่างด้านล่าง mysql> Select * -> from -&g
อย่างที่เราทราบดีว่าหลังจากเขียนข้อความค้นหาหลายบรรทัดในบรรทัดแรกแล้ว MySQL จะเปลี่ยนพรอมต์ ตารางต่อไปนี้แสดงพรอมต์ MySQL ที่แตกต่างกันและมีความหมาย - พรอมต์ ความหมาย หมายความว่า MySQL พร้อมสำหรับคำสั่งใหม่ → หมายความว่า MySQL กำลังรอบรรทัดถัดไปของคำสั่งหลายบรรทัด หมายความว่า MySQ
ด้วยความช่วยเหลือของตัวเลือก \G หรือ \g ที่ส่วนท้ายของคำสั่ง MySQL เราสามารถเรียกใช้ได้โดยไม่ต้องใช้เครื่องหมายอัฒภาค พิจารณาตัวอย่างด้านล่าง − mysql> Select * from Stock_item\G *************************** 1. row *************************** item_name: Calculator Value: 15 Quan
The ALL, ANY, SOME, IN ตัวดำเนินการเปรียบเทียบค่ากับทุกค่าที่ส่งคืนโดยแบบสอบถามย่อย ตัวดำเนินการเหล่านี้ทั้งหมดต้องปฏิบัติตามตัวดำเนินการเปรียบเทียบ ไวยากรณ์ของการใช้โอเปอเรเตอร์เหล่านี้กับแบบสอบถามย่อยของ MySQL มีดังต่อไปนี้ - ไวยากรณ์สำหรับการใช้ ทั้งหมด Operand comparison_operator ALL (subquery)
ต่อไปนี้เป็นคำพ้องความหมายของ MySQL DESCRIBE นั่นคือคำสั่งด้วยความช่วยเหลือซึ่งเราจะได้ข้อมูล/โครงสร้างของตารางแบบเดียวกับที่เราได้รับจาก DESCRIBE - อธิบายคำชี้แจง อธิบายเป็นคำพ้องความหมายของคำสั่ง DESCRIBE ไวยากรณ์ของมันยังคล้ายกับคำสั่ง DESCRIBE ลองพิจารณาตัวอย่างต่อไปนี้ − mysql> Explain Emplo
ด้วยคำสั่ง SHOW FULL COLUMNS เราสามารถรับข้อมูลเพิ่มเติมเกี่ยวกับคอลัมน์ของตารางได้มากกว่าข้อมูลที่เราได้รับจากคำสั่ง MySQL DESCRIBE, EXPLAIN และ SHOW COLUMNS ไวยากรณ์ SHOW FULL COLUMNS from Table_name; ตัวอย่าง mysql> SHOW FULL COLUMNS FROM EMPLOYEE\G; *************************** 1. row *******
ตามที่เราทราบคำสั่งอธิบายจะให้ข้อมูล/โครงสร้างของทั้งตาราง ด้วยความช่วยเหลือของคำสั่ง EXPLAIN พร้อมกับชื่อตารางและชื่อคอลัมน์ เราสามารถรับข้อมูลเกี่ยวกับคอลัมน์นั้นได้ ไวยากรณ์ EXPLAIN table_name col_name; ตัวอย่างที่ 1 mysql> EXPLAIN employee ID; +-------+---------+------+-----+---------+-------
เราสามารถจัดเรียงหลายคอลัมน์ในแบบสอบถามเดียวโดยตั้งชื่อคอลัมน์มากกว่าหนึ่งคอลัมน์ด้วย ORDER BY Clause ไวยากรณ์ข้างต้นมีดังนี้ − ไวยากรณ์ Select Col1,Col2,… from table_name ORDER BY Col1, Col2,… ตัวอย่าง สมมติว่าเราต้องการจัดเรียงตารางชื่อ Student ตามคอลัมน์ Name และ RollNo ทั้งสองอย่าง
สามารถทำได้โดยใช้คำสั่ง ALTER TABLE ของ MySQL พิจารณาตาราง นักเรียน ซึ่งขนาดของคอลัมน์ เกรด ถูกประกาศเป็น Varchar(10) สามารถดูได้จากแบบสอบถามต่อไปนี้ - mysql> DESCRIBE Student; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | D
สามารถทำได้โดยใช้คำสั่ง ALTER TABLE ของ MySQL พิจารณาตาราง นักเรียน ซึ่งประเภทข้อมูลของคอลัมน์ RollNo ถูกประกาศเป็นจำนวนเต็ม สามารถดูได้จากแบบสอบถามต่อไปนี้ - mysql> DESCRIBE Student; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null |
สำหรับการเขียนแบบสอบถาม MySQL เพื่อให้ตารางทั้งหมดมีชื่อคอลัมน์เฉพาะ เราสามารถใช้ตัวดำเนินการ LIKE สามารถเข้าใจได้ด้วยความช่วยเหลือของตัวอย่างดังต่อไปนี้ − ตัวอย่าง ต่อไปนี้คือแบบสอบถาม MySQL เพื่อให้ได้ตารางทั้งหมดที่มีชื่อคอลัมน์ ID อยู่ในนั้น - mysql> Select Column_name as 'ColumnName'
อย่างที่เราทราบดีว่าการสืบค้นประกอบด้วยคำสั่ง MySQL ตามด้วยเครื่องหมายอัฒภาค เราสามารถป้อนคำสั่ง MySQL ได้หลายชุด โดยคั่นด้วยเครื่องหมายอัฒภาคในบรรทัดเดียว ลองพิจารณาตัวอย่างต่อไปนี้ − mysql> Select * from Student; Select * from Student ORDER BY Name; +--------+--------+--------+ | Name |
สำหรับการสร้างตารางที่มีชื่อประเภทดังกล่าว เราต้องใช้เครื่องหมายคำพูด เครื่องหมายคำพูดจะเป็นแบบเดี่ยวหรือแบบคู่ก็ได้ขึ้นอยู่กับโหมด ANSI_QUOTES SQL หากโหมดนี้ปิดใช้งาน จากนั้น ตัวระบุเครื่องหมายคำพูดคือเครื่องหมายย้อนกลับ (“`”) ลองพิจารณาตัวอย่างต่อไปนี้ที่เราสร้างตารางชื่อ เลือก − mysql> Create
โหลดข้อมูล คำสั่งนี้ใช้สำหรับการนำเข้าข้อมูลจากไฟล์ข้อมูลไปยังฐานข้อมูลของเรา มันอ่านบันทึกข้อมูลโดยตรงจากไฟล์และแทรกลงในตาราง ไวยากรณ์จะเป็นดังนี้ - ไวยากรณ์ LOAD DATA LOCAL INFILE '[path/][file_name]' INTO TABLE [table_name ]; ในที่นี้ เส้นทางคือที่อยู่ของไฟล์ file_name คือชื่อของไฟล์ .
สำหรับการรวมการเลือก ROW กับการเลือก COLUMN เราสามารถใช้ส่วนคำสั่ง WHERE ตัวอย่างเช่น เรามีตารางด้านล่าง − mysql> Select * from Student; +--------+--------+--------+ | Name | RollNo | Grade | +--------+--------+--------+ | Gaurav | 100 | B.tech | | Aarav | 150 &nbs
สำหรับการเรียงลำดับแถวอย่างมีความหมาย เราสามารถใช้คำสั่ง ORDER BY ได้ สมมติว่าเราต้องการจัดเรียงแถวของตารางต่อไปนี้ - mysql> Select * from Student; +--------+--------+--------+ | Name | RollNo | Grade | +--------+--------+--------+ | Gaurav | 100 | B.tech | | Aarav  
สามารถเข้าใจได้ด้วยความช่วยเหลือของตัวอย่างที่เราจะคัดลอกค่าของตารางไปยังตารางอื่น เรากำลังใช้ข้อมูลจากตาราง รถยนต์ และคัดลอกข้อมูลไปยังตาราง copy_cars - mysql> CREATE TABLE copy_cars LIKE cars; Query OK, 0 rows affected (0.86 sec) mysql> SELECT * from copy_cars; Empty set (0.08 sec) แบบสอบถ