SQL คืออะไร? ชื่อเต็มและพื้นฐาน (บทเรียนเบื้องต้น)
⚡ สรุปอย่างชาญฉลาด
SQL คืออะไร? Structured Query Language คือภาษามาตรฐานสำหรับการทำงานกับฐานข้อมูลเชิงสัมพันธ์ ช่วยให้คุณสร้างสคีมา ค้นหาข้อมูล อัปเดตแถว จัดการสิทธิ์ และเชื่อมต่อแอปพลิเคชันสมัยใหม่กับระบบต่างๆ เช่น SQL Server PostgreSQL, MySQLและเซิร์ฟเวอร์ SQL
SQL คืออะไร?
SQL SQL เป็นภาษามาตรฐานสำหรับการทำงานกับฐานข้อมูลเชิงสัมพันธ์ ใช้ในการแทรก ค้นหา อัปเดต และลบระเบียน รวมถึงยังสามารถเพิ่มประสิทธิภาพและบำรุงรักษาฐานข้อมูลได้อีกด้วย SQL เป็นมาตรฐาน ANSI และ ISO ดังนั้นไวยากรณ์หลักจึงเหมือนกันในเอนจิ้นต่างๆ เช่น PostgreSQL, MySQL, Oracleและเซิร์ฟเวอร์ SQL
SQL แบบเต็ม
SQL ย่อมาจาก Structured Query Languageออกเสียงว่า “SQL” หรือ “ซี-คิว” IBM พัฒนาขึ้นในช่วงทศวรรษ 1970 และฐานข้อมูลเชิงสัมพันธ์ เช่น MySQL, Oracle Database, Microsoft SQL Server, PostgreSQLและ SAP Sybase ใช้มาตรฐาน ANSI SQL เป็นพื้นฐาน
วิธีใช้ SQL
คุณใช้คำสั่ง SQL โดยเขียนคำสั่งที่ระบุชื่อการดำเนินการ ตารางเป้าหมาย และเงื่อนไขการกรองใดๆ คำสั่ง SELECT ที่ส่งคืนสมาชิกที่มีอายุมากกว่า 30 ปี จะมีลักษณะดังนี้:
SELECT * FROM Members WHERE Age > 30;
ไวยากรณ์ของฐานข้อมูลต่างๆ นั้นโดยส่วนใหญ่คล้ายคลึงกัน เนื่องจากทุกเอนจิ้นหลักๆ ต่างก็ใช้มาตรฐาน ANSI ผลิตภัณฑ์ RDBMS บางตัวอาจเพิ่มภาษาเฉพาะของตนเอง เช่น T-SQL ใน SQL Server และ PL/SQL ใน RDBMS Oracle.
คลิก Good Farm Animal Welfare Awards หากไม่สามารถเข้าถึงวิดีโอได้
SQL ใช้ทำอะไรบ้าง?
ต่อไปนี้คือเหตุผลสำคัญที่ควรใช้ SQL:
- ช่วยให้ผู้ใช้เข้าถึงข้อมูลใน ระบบอาร์ดีบีเอ็มเอส.
- มันช่วยให้คุณอธิบายข้อมูลได้
- ช่วยให้คุณสามารถกำหนดข้อมูลในฐานข้อมูลและจัดการข้อมูลเฉพาะนั้นได้
- ด้วยความช่วยเหลือของ SQL คุณสามารถสร้างและวางฐานข้อมูลและตารางได้
- SQL ช่วยให้คุณสามารถใช้ฟังก์ชันในฐานข้อมูล สร้างวิว และเขียนโพรซีเดอร์ที่จัดเก็บไว้ได้
- คุณสามารถตั้งค่าสิทธิ์บนตาราง ขั้นตอน และมุมมองได้
- SQL รองรับงานวิเคราะห์ต่างๆ เช่น การจัดทำรายงาน การวิเคราะห์ข้อมูลทางธุรกิจ และการป้อนข้อมูลเข้าสู่ระบบการเรียนรู้ของเครื่อง
ประวัติโดยย่อของ SQL
นี่คือจุดสังเกตสำคัญจากประวัติศาสตร์ของ SQL:
- พ.ศ. 1970 (ค.ศ. XNUMX) – ดร. เอ็ดการ์ เอฟ “เท็ด” คอดด์ บรรยายถึงแบบจำลองเชิงสัมพันธ์สำหรับฐานข้อมูล
- ปี 1974 – ภาษาการสอบถามเชิงโครงสร้าง (Structured Query Language) ปรากฏตัวขึ้น IBM วิจัย.
- 1978 - IBM เผยแพร่ System/R แล้ว
- ปี 1986 – ANSI ได้กำหนดมาตรฐาน SQL เป็น SQL-86
- ปี 1989 – มีการเผยแพร่มาตรฐาน SQL เวอร์ชันเชิงพาณิชย์ฉบับแรก
- ปี 1999 – SQL:1999 เพิ่มทริกเกอร์และคุณสมบัติเชิงวัตถุ
- SQL:2003 – ฟังก์ชัน Window และคุณสมบัติ XML
- SQL:2006 – รองรับภาษาการสืบค้นข้อมูล XML
- SQL:2011 – รองรับฐานข้อมูลเชิงเวลา
- SQL:2016 – JSON, การจดจำรูปแบบแถว, ฟังก์ชันตารางแบบโพลีมอร์ฟิก
- SQL:2023 – การสืบค้นข้อมูลกราฟคุณสมบัติ (SQL/PGQ) และการจัดการ JSON ที่เข้มงวดมากขึ้น
ประเภทของคำสั่ง SQL
ต่อไปนี้คือคำสั่ง SQL 5 ประเภทที่ใช้กันอย่างแพร่หลาย:
- ภาษานิยามข้อมูล (DDL)
- ภาษาการจัดการข้อมูล (DML)
- ภาษาควบคุมข้อมูล (DCL)
- ภาษาควบคุมการทำธุรกรรม (TCL)
- ภาษาคิวรีข้อมูล (DQL)
รายการคำสั่ง SQL
นี่คือรายชื่อคำที่ใช้กันทั่วไปบางส่วน คำสั่ง SQL:
- สร้าง – กำหนดโครงสร้างหรือสคีมาของฐานข้อมูล
- INSERT – แทรกข้อมูลลงในแถวของตาราง
- อัพเดท – อัปเดตข้อมูลที่มีอยู่แล้วในฐานข้อมูล
- ลบ – ลบแถวหนึ่งแถวหรือมากกว่านั้นออกจากตาราง
- SELECT – เลือกแอตทริบิวต์ที่ตรงกับเงื่อนไขที่ระบุโดยคำสั่ง WHERE
- DROP – ลบตารางและฐานข้อมูล
- ผสาน – ดำเนินการ INSERT หรือ UPDATE ในคำสั่งเดียวโดยอิงตามเงื่อนไขการจับคู่
กระบวนการ SQL
เมื่อคุณเรียกใช้คำสั่ง SQL กลไกฐานข้อมูลจะวิเคราะห์คำสั่ง เลือกแผนการดำเนินการ และเรียกใช้กับเลเยอร์จัดเก็บข้อมูล
องค์ประกอบสำคัญในกระบวนการนี้ได้แก่:
- โปรแกรมสืบค้น SQL
- เครื่องมือเพิ่มประสิทธิภาพ
- สอบถาม Dispatcher
- เอ็นจิ้นแบบสอบถามคลาสสิก
เอนจินการค้นหาแบบคลาสสิกจะจัดการกับคำสั่งค้นหาที่ไม่ใช่ SQL ในขณะที่เอนจินการค้นหา SQL จะประมวลผลภาระงานที่มีโครงสร้าง

มาตรฐาน SQL
SQL ครอบคลุมการสร้างฐานข้อมูล การลบ การดึงและแก้ไขแถว และการควบคุมการเข้าถึง เป็นมาตรฐาน ANSI (American National Standards Institute) และ ISO และฉบับปัจจุบันคือ ISO / IEC 9075: 2023โดยทั่วไปเรียกว่า SQL:2023 มาตรฐานนี้แบ่งออกเป็นหลายส่วน:
| ส่วนหนึ่ง | Descriptไอออน |
|---|---|
| ส่วนที่ 1 – SQL/กรอบงาน | นำเสนอแนวคิดเชิงตรรกะที่เป็นพื้นฐานของทุกส่วนอื่นๆ |
| ส่วนที่ 2 – SQL/Foundation | กำหนดไวยากรณ์และหลักความหมายหลักของ SQL |
| ส่วนที่ 3 – SQL/CLI | ระบุอินเทอร์เฟซระดับการเรียกใช้ที่ใช้โดย ODBC และไดรเวอร์ที่คล้ายกัน |
| ส่วนที่ 4 - โมดูลที่จัดเก็บถาวร | รูทีนที่เก็บไว้ รูทีนภายนอก และส่วนขยายภาษาขั้นตอนไปยัง SQL |
| ส่วนที่ 9 – การจัดการข้อมูลภายนอก | เพิ่มไวยากรณ์และคำจำกัดความที่ช่วยให้ SQL สามารถเข้าถึงแหล่งข้อมูลที่ไม่ใช่ SQL เช่น ไฟล์ได้ |
| ส่วนที่ 10 – การผูกภาษาวัตถุ | ระบุไวยากรณ์และความหมายของการฝัง SQL ใน Java. |
| ส่วนที่ 11 – SQL/สคีมา | แผนผังข้อมูลและคำจำกัดความ |
| ส่วนที่ 13 – SQL/JRT | รูทีนและประเภท SQL ที่ใช้ Java ภาษาเขียนโปรแกรม |
| ตอนที่ 14 – SQL/XML | SQL และ XML รวมถึงการผสานรวม XMLTYPE และ XQuery |
| ส่วนที่ 15 – SQL/MDA | ให้การสนับสนุน SQL สำหรับอาร์เรย์หลายมิติ |
| ส่วนที่ 16 – SQL/PGQ | เพิ่มเข้ามาใน SQL:2023 เพื่อกำหนดการสืบค้นกราฟคุณสมบัติบนตารางเชิงสัมพันธ์ |
เอ็นจิ้น SQL สมัยใหม่
แต่ละเอนจิ้นจะนำเอาส่วนหลักของมาตรฐาน ANSI ส่วนใหญ่มาใช้ และเพิ่มส่วนขยายของตนเองเข้าไป:
- PostgreSQL 17: โอเพนซอร์สที่ปฏิบัติตามมาตรฐานอย่างเคร่งครัดและรองรับ JSON อย่างครบถ้วน
- MySQL 8: นิยมใช้ในเว็บแอปพลิเคชัน รองรับฟังก์ชันหน้าต่าง, CTE และโหมดจัดเก็บเอกสาร
- Microsoft SQL Server 2022: เครื่องมือระดับองค์กรพร้อมระบบค้นหาอัจฉริยะและ Azure การจำลองไซแนปส์
- Oracle Database 23ai: ผสานรวม SQL กับการค้นหาแบบเวกเตอร์ และมุมมองแบบคู่ขนาน JSON-relational
- SQLite: เอนจินขนาดเล็กที่ใช้ไฟล์เป็นหลัก ฝังอยู่ในแอปพลิเคชันมือถือและเว็บเบราว์เซอร์
คลังข้อมูลบนคลาวด์ เช่น Amazon เรดชิฟต์, Google นอกจากนี้ BigQuery และ Snowflake ยังรองรับภาษา SQL ตามมาตรฐาน ANSI ทำให้สามารถใช้งานภาษานี้ได้ตั้งแต่แล็ปท็อปไปจนถึงการวิเคราะห์ข้อมูลขนาดเพตาไบต์
องค์ประกอบภาษา SQL
ต่อไปนี้คือองค์ประกอบสำคัญของภาษา SQL:
- คำสำคัญ: คำสงวน เช่น SELECT, FROM หรือ WHERE ที่เป็นส่วนประกอบของทุกคำสั่ง
- ตัวระบุ: ชื่อของวัตถุในฐานข้อมูล เช่น รหัสผู้ใช้ ตาราง และคอลัมน์
- สตริง: สตริงหรือนิพจน์ตามตัวอักษรที่มีชนิดข้อมูล VARCHAR หรือ CHAR
- นิพจน์: สร้างขึ้นจากค่าคงที่ ตัวดำเนินการ SQL ชื่อคอลัมน์ และซับเควรี
- เงื่อนไขการค้นหา: กรองแถวหรือใช้คำสั่งควบคุมการไหลของโปรแกรม เช่น IF
- ค่าพิเศษ: ค่าต่างๆ เช่น CURRENT_TIMESTAMP ถูกนำมาใช้ในนิพจน์และค่าเริ่มต้นของคอลัมน์
- ตัวแปร: เอนจิ้นส่วนใหญ่รองรับตัวแปรระดับโลคอล โกลบอล และระดับการเชื่อมต่อในโพรซีเดอร์ที่จัดเก็บไว้
- ความคิดเห็นที่: คอมเมนต์แบบบรรทัดเดียว (–) และแบบบล็อก (/* */) ใช้สำหรับอธิบายคำสั่ง SQL แต่จะไม่ถูกประมวลผล
- ค่าโมฆะ: NULL หมายถึงค่าที่ไม่ทราบค่า ขาดหาย หรือไม่เกี่ยวข้อง
ฐานข้อมูลใน SQL คืออะไร?
A ฐานข้อมูล ตารางคือชุดของตารางที่ใช้จัดเก็บข้อมูลที่มีโครงสร้าง โดยตารางประกอบด้วยแถว (ระเบียนหรือคู่ข้อมูล) และคอลัมน์ (คุณลักษณะ)
แต่ละคอลัมน์จะจัดเก็บข้อมูลเฉพาะประเภท เช่น ชื่อ วันที่ จำนวนเงิน หรือตัวเลข ความสัมพันธ์ระหว่างตารางจะถูกกำหนดโดยคีย์หลักและคีย์รอง ซึ่งเป็นสิ่งที่ทำให้ฐานข้อมูลนี้เป็น "ฐานข้อมูลเชิงสัมพันธ์"
NoSQL คืออะไร?
NoSQL เป็นหมวดหมู่ของ ระบบการจัดการฐานข้อมูล ซึ่งคุณลักษณะหลักคือการไม่ยึดติดกับแนวคิดเชิงสัมพันธ์ NoSQL ย่อมาจาก “Not only SQL” (ไม่ใช่แค่ SQL) หมวดหมู่นี้เติบโตขึ้นพร้อมกับบริษัทยักษ์ใหญ่ทางอินเทอร์เน็ต เช่น Google, Facebook และ Amazonซึ่งเป็นผู้ที่ต้องจัดการกับข้อมูลปริมาณมหาศาล
เมื่อฐานข้อมูลเชิงสัมพันธ์จัดการกับปริมาณข้อมูลมหาศาล เวลาตอบสนองอาจช้าลง คุณสามารถ "เพิ่มขนาด" โดยการอัปเกรดฮาร์ดแวร์ หรือ "ขยายขนาด" โดยการกระจายภาระงานไปยังโฮสต์หลายเครื่อง
ฐานข้อมูล NoSQL คือ ไม่สัมพันธ์กัน ร้านค้าที่ออกแบบมาสำหรับแอปพลิเคชันบนเว็บ ไม่ได้ใช้ SQL หรือบังคับใช้สคีมาและ ACID อย่างเคร่งครัดเสมอไปAtomคุณสมบัติ (เช่น ความเป็นน้ำแข็ง ความสม่ำเสมอ การแยกตัว ความทนทาน) ไม่ได้รับการรับประกันเสมอไป แม้ว่าระบบสมัยใหม่เช่น MongoDB และ Cassandra ขณะนี้มีโหมดการทำธุรกรรมที่สามารถปรับแต่งได้แล้ว
เหตุใดการเรียน SQL หลังจากเรียน NoSQL จึงสมเหตุสมผล
เนื่องจาก NoSQL มีความสามารถในการขยายขนาดได้ดีกว่าฐานข้อมูลเชิงสัมพันธ์ คุณอาจสงสัยว่า... ทำไมยังมีคนเรียน SQL อยู่ฐานข้อมูล NoSQL เป็นฐานข้อมูลเฉพาะทางและเหมาะที่สุดสำหรับชุดข้อมูลขนาดใหญ่ที่ไม่มีโครงสร้าง แต่แอปพลิเคชันทางธุรกิจส่วนใหญ่ยังคงใช้ฐานข้อมูลเชิงสัมพันธ์และเครื่องมือที่เกี่ยวข้องอยู่
ฐานข้อมูลเชิงสัมพันธ์มีข้อดีเหนือกว่าฐานข้อมูล NoSQL ดังต่อไปนี้:
- รูปแบบการจัดเก็บและจัดการข้อมูลที่มีประสิทธิภาพ ถือเป็นสิ่งสำคัญอย่างยิ่งสำหรับผู้ใช้งานระดับองค์กร
- รองรับการแสดงผลแบบจำกัดสิทธิ์ ทำให้ผู้ใช้สามารถเห็นเฉพาะข้อมูลที่ได้รับอนุญาตเท่านั้น
- รองรับ stored procedures ที่ผลักดันตรรกะทางธุรกิจเข้าไปในฐานข้อมูล
- รูปแบบการรักษาความปลอดภัยที่แข็งแกร่งยิ่งขึ้น การควบคุมการเข้าถึงตามบทบาท และคุณสมบัติการตรวจสอบ
- SQL เป็นภาษากลางของเครื่องมือ BI, แดชบอร์ด และ AI ที่ต้องการข้อมูลป้อนเข้าที่มีโครงสร้าง
ความต้องการบุคลากรผู้เชี่ยวชาญที่สามารถจัดการฐานข้อมูลเชิงสัมพันธ์ยังคงมีอยู่ การเจริญเติบโตดังนั้นการเรียนรู้พื้นฐาน SQL จึงยังคงมีประโยชน์อย่างชัดเจน
SQL และ AI: เครื่องมือแปลงข้อความเป็น SQL
ปัจจุบัน SQL กลายเป็นภาษาเป้าหมายสำหรับผู้ช่วย AI แล้ว ข้อความเป็น SQL เครื่องมือเหล่านี้แปลงคำถามภาษาอังกฤษธรรมดา เช่น “แสดงรายชื่อลูกค้า 10 อันดับแรกตามรายได้ในไตรมาสที่ผ่านมา” ให้เป็นคำสั่ง SQL ที่สามารถนำไปปฏิบัติได้ ตัวเลือกยอดนิยม ได้แก่ นักบิน GitHub, วันนา เอไอ, Microsoft นักบินใน Azure SQL และ Oracle เลือกใช้ AI ตรวจสอบความถูกต้อง ความปลอดภัย และการจัดทำดัชนีของ SQL ที่สร้างขึ้นก่อนนำไปใช้กับข้อมูลจริงเสมอ
หนังสือที่ดีที่สุดสำหรับการเรียนรู้ SQL
นี่คือหนังสือ SQL ยอดนิยมบางส่วน:
- บทเรียน SQL สำหรับผู้เริ่มต้น:
แจกันดอกไม้โรแมนติกนี้ บทช่วยสอน SQL สำหรับผู้เริ่มต้น ไฟล์ PDF นี้ครอบคลุมแนวคิดพื้นฐานเกี่ยวกับฐานข้อมูล คำสั่ง MS-SQL และหัวข้อขั้นสูง เช่น การเชื่อมตารางใน SQL (SQL joins)
- SQL ใน 10 นาที: ตัวอย่างโค้ดสีสันสดใสแสดงให้เห็นถึงโครงสร้างของคำสั่ง SQL รวมถึงทางลัดและวิธีแก้ปัญหาสำเร็จรูป BUY NOW
- ตำราอาหาร SQL: เทคนิคต่างๆ เช่น การประมวลผลสตริงด้วย SQL เพื่อแยกวิเคราะห์ตัวอักษรหรือองค์ประกอบที่คั่นด้วยตัวคั่น BUY NOW
- SQL: The Complete Reference: ครอบคลุมฟังก์ชันของหน้าต่าง การจัดเรียงแถวเป็นคอลัมน์ และการจัดเรียงแบบย้อนกลับ BUY NOW
- คู่มือ SQL ฉบับพกพา: สอนฟังก์ชัน SQL ไวยากรณ์นิพจน์ปกติ และการแปลงชนิดข้อมูล BUY NOW
สำหรับหนังสือ SQL เพิ่มเติม – คลิกที่นี่

