คำสั่ง SQL Command
Structured Query Language หรือ SQL คือคำสั่งบริหารจัดการฐานข้อมูล (Database) โดยเฉพาะ Relational Database Management System (RDBMS) เช่น Oracle, MySQL, Microsoft SQL Server, PostgreSQL, IBM DB2, Microsoft Access ซึ่งเราสามารถใช้ SQL command ในการสั่งการ หรือจัดการข้อมูลภายในฐานข้อมูลเหล่านี้ได้
SQL Syntax
ภาษา SQL ถูกแบ่งออกมาเป็นส่วนประกอบต่างๆ เราเรียกส่วนเหล่านี้ตามรูปแบบเช่น
- Clauses คือองค์ประกอบหนึ่งของ statement และ query (่ส่วนนี้เป็น Optional)
- Expressions คือการสร้างผลลัพธ์ออกมาในรูป table ที่ประกอบด้วย column และ row จากข้อมูล
- Predicates คือรูปแบบเงือนไขที่มีผลลัพธ์เป็น true/false/unknown หรือก็คือ Boolean นั้นเอง
- Queries คือการดึงข้อมูลตามเงือนไข (clause) เป็นส่วนสำคัญใน SQL
- Statements คือสามารถมีผลต่อโครงสร้างข้อมูล, จัดการข้อมูล trasactions, program flow, session หรือแม้กระทั้ง วิเคราะห์ปัญหา โดยจำเป็นต้องจบด้วย semicolon (;) ซึ่งเป็นสิ่งจำเป็นที่ต้องมีทุกครั้งสำหรับ SQL
- Insignificant whitespace หรือช่องว่าง สำหรับใน SQL statement และ query จะไม่สนใจ ทำให้ SQL สามารถเขียนในรูปแบบที่หลากหลายสวยงาม
ข้อมูล SQL Command เบื้องต้น
SQL – Data Types คือ การกำหนดชนิดค่าตัวแปรในตารางข้อมูล
SQL – Operator คือ การกำหนดกระบวนการในการเลือกข้อมูล
SQL – Expression คือ การสร้างเงื่อนไขจากกระบวนการเพื่อเลือกข้อมูล
คำสั่ง SQL พื้นฐาน
ฐานข้อมูล (Database)
SQL – Create Database คือ การสร้างฐานข้อมูล
SQL – Drop Database คือ การลบตารางออกจากฐานข้อมูล
SQL – Select Database คือ การเลือกใช้งานฐานข้อมูลที่ต้องการ
ตาราง (Table)
SQL – Create Table คือ การสร้างตารางข้อมูลในฐานข้อมูล
SQL – Drop Table คือ การลบตารางออกจากฐานข้อมูล
SQL – Insert Query คือ การเพิ่มแถวข้อมูลลงในตารางของฐานข้อมูล
SQL – Select Query คือ การแสดงข้อมูลในตารางของฐานข้อมูล
SQL – Where Clause คือ การสร้างเงื่อนไขเพื่อเลือกข้อมูลที่ต้องการ
SQL – AND & OR Clauses คือ การเชื่อมความสัมพันธ์ของเงื่อนไข
SQL – Update Query คือ การเปลี่ยนแปลงข้อมูลในตารางของฐานข้อมูล
SQL – Delete Query คือ การลบข้อมูลในตารางของฐานข้อมูล
SQL – Like Clause คือ การเปรียบเทียบค่าแบบส่วนประกอบ
SQL – Top Clause คือ การจำกัดจำนวนบรรทัด
SQL – Order By คือ การจัดเรียงข้อมูลที่แสดงผลตามลำดับ
SQL – Group By คือ การจัดกลุ่มข้อมูลตาม column ที่กำหนด
SQL – Distinct Keyword คือ การแสดงข้อมูลโดยไม่ซ้ำกันจาก column ที่กำหนด
คำสั่ง SQL ขั้นสูง
SQL – Constraint คือ การตั้งข้อจำกัดของข้อมูลในตาราง มีด้วยกัน 7 ชนิด
- NOT NULL Constraint
- DEFAULT Constraint
- UNIQUE Constraint
- PRIMARY Key
- FOREIGN Key
- CHECK Constraint
- INDEX
SQL – JOIN คือ การเชื่อมความสัมพันธ์ระหว่าง table ด้วย column
SQL – UNION คือ การรวมข้อมูลชนิดเดียวกันทั้ง 2 table
SQL – INTERSECT คือ การรวมข้อมูล 2 table เฉพาะที่เหมือนกัน
SQL – EXCEPT คือ การเลือกข้อมูลที่มีเฉพาะ table แรก
SQL – NULL คือ ข้อมูลที่ไม่สามารถระบุค่าได้ หรือ ไม่มีค่า
SQL – Alias คือ การตั้งนามแฝงให้กับ table หรือ column
SQL – INDEX คือ ระบบดรรชนีค้นหาที่ระบุตำแหน่งข้อมูลให้รวดเร็ว
SQL – ALTER คือ คำสั่งเปลี่ยนแปลงข้อมูล column ใน table
SQL – TRUNCATE คือ การลบข้อมูลภายใน table ทั้งหมด
SQL – VIEW คือ กำหนดการแสดงผลจากรูปแบบ query statement
SQL – HAVING คือ กำหนดเงื่อนไขแสดงผลของ GROUP BY
SQL – TRANSACTION คือ หน่วยของข้อมูลที่เปลี่ยนแปลงบนฐานข้อมูล
SQL – WILDCARD คือการแทนค่าอักษรอะไรก็ได้
SQL – DATE Function คือ ฟังก์ชันการใช้งานข้อมูลวันที่และเวลา
SQL – Sub query คือ การดึงข้อมูลภายใต้ query หลัก
SQL Extension
สำหรับบางฐานข้อมูล อาจจะมีส่วนขยายเพิ่มจาก SQL Standard เพื่อเพิ่มความสามารถในการใช้งานคำสั่ง SQL ในรูปแบบที่ซับซ้อนมากขึ้น เราจะเรียกว่า SQL Extension ซึ่งแต่ละผลิตภัณฑ์ก็จะมี SQL Extension ไม่เหมือนกันตามแต่ผู้ผลิต
Source | Common name | Full name |
---|---|---|
ANSI/ISO Standard | SQL/PSM | SQL/Persistent Stored Modules |
Interbase / Firebird | PSQL | Procedural SQL |
IBM DB2 | SQL PL | SQL Procedural Language (implements SQL/PSM) |
IBM Informix | SPL | Stored Procedural Language |
IBM Netezza | NZPLSQL | (based on Postgres PL/pgSQL) |
Microsoft / Sybase | T-SQL | Transact-SQL |
Mimer SQL | SQL/PSM | SQL/Persistent Stored Module (implements SQL/PSM) |
MySQL | SQL/PSM | SQL/Persistent Stored Module (implements SQL/PSM) |
MonetDB | SQL/PSM | SQL/Persistent Stored Module (implements SQL/PSM) |
NuoDB | SSP | Starkey Stored Procedures |
Oracle | PL/SQL | Procedural Language/SQL (based on Ada) |
PostgreSQL | PL/pgSQL | Procedural Language/PostgreSQL Structured Query Language (implements SQL/PSM) |
Sybase | Watcom-SQL | SQL Anywhere Watcom-SQL Dialect |
Teradata | SPL | Stored Procedural Language |
SAP | SAP HANA | SQL Script |
SQL Standard
Year | Name | Alias | Comments |
---|---|---|---|
1986 | SQL-86 | SQL-87 | First formalized by ANSI. |
1989 | SQL-89 | FIPS 127-1 | Minor revision that added integrity constraints, adopted as FIPS 127-1. |
1992 | SQL-92 | SQL2, FIPS 127-2 | Major revision (ISO 9075), Entry Level SQL-92 adopted as FIPS 127-2. |
1999 | SQL:1999 | SQL3 | Added regular expression matching, recursive queries (e.g. transitive closure), triggers, support for procedural and control-of-flow statements, non-scalar types, and some object-oriented features (e.g. structured types). Support for embedding SQL in Java (SQL/OLB) and vice versa (SQL/JRT). |
2003 | SQL:2003 | Introduced XML-related features (SQL/XML), window functions, standardized sequences, and columns with auto-generated values (including identity-columns). | |
2006 | SQL:2006 | ISO/IEC 9075-14:2006 defines ways that SQL can be used with XML. It defines ways of importing and storing XML data in an SQL database, manipulating it within the database, and publishing both XML and conventional SQL-data in XML form. In addition, it lets applications integrate queries into their SQL code with XQuery, the XML Query Language published by the World Wide Web Consortium (W3C), to concurrently access ordinary SQL-data and XML documents.[36] | |
2008 | SQL:2008 | Legalizes ORDER BY outside cursor definitions. Adds INSTEAD OF triggers. Adds the TRUNCATE statement.[37] | |
2011 | SQL:2011 | Adds temporal data definition and manipulation. | |
2016 | SQL:2016 | Adds row pattern matching, polymorphic table functions, JSON. |
สมัคร / ติดตั้งเน็ตบ้านได้ที่นี่ คลิก
Author: Suphakit Annoppornchai
Credit: https://saixiii.com, https://www.facebook.com/saixiii.bank/