sql command

คำสั่ง 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-structure

 

ข้อมูล 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 ชนิด

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.comhttps://www.facebook.com/saixiii.bank/