SQL Statements
ในบทความจะกล่าวคำสั่งที่ใช้ทำงานต่างๆ ของฐานข้อมูล โดยตัวอย่างที่ยกขึ้นมาอธิบายมีดังนี้
- SELECT
- SELECT DISTINCT
- WHERE
- AND, OR, NOT
- ORDER BY
- INSERT INTO
- NULL
- UPDATE
- DELETE
1. SELECT
เป็นคำสั่งที่ใช้ในการเลือกข้อมูลจาก Database. ข้อมูลที่ส่งกลับมาจะถูกเก็บไว้ในตารางผลลัพธ์
ตัวอย่างการใช้งาน
SELECT CustomerName, City FROM Customers;
ผลลัพธ์ที่ได้
CustomerName | City |
Alfreds Futterkiste | Berlin |
Ana Trujillo Emparedados y helados | México D.F. |
Antonio Moreno Taquería | México D.F. |
Around the Horn | London |
Berglunds snabbköp | Luleå |
Blauer See Delikatessen | Mannheim |
Blondel père et fils | Strasbourg |
Bólido Comidas preparadas | Madrid |
Bon app' | Marseille |
Bottom-Dollar Marketse | Tsawassen |
B's Beverages | London |
Cactus Comidas para llevar | Buenos Aires |
Centro comercial Moctezuma | México D.F. |
2. SELECT DISTINCT
เป็นคำสั่งที่ใช้ในการเลือกข้อมูลจาก Database. ข้อมูลที่ส่งกลับมาจะเป็นข้อมูลที่แตกต่างกันเท่านั้น
ตัวอย่างการใช้งาน
SELECT DISTINCT Country FROM Customers;
ผลลัพธ์ที่ได้
Country |
Germany |
Mexico |
UK |
Sweden |
France |
Spain |
Canada |
Argentina |
Switzerland |
Brazil |
Austria |
Italy |
Portugal |
USA |
Venezuela |
Ireland |
Belgium |
Norway |
Denmark |
Finland |
Poland |
3. WHERE
เป็นคำสั่งที่ในการ filter ข้อมูลที่ต้องการตามเงื่อนไขที่กำหนด (Condition)
ตัวอย่างการใช้งาน
SELECT * FROM Customers WHERE Country='Mexico';
ผลลัพธ์ที่ได้
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
13 | Centro comercial Moctezuma | Francisco Chang | Sierras de Granada 9993 | México D.F. | 05022 | Mexico |
58 | Pericles Comidas clásicas | Guillermo Fernández | Calle Dr. Jorge Cash 321 | México D.F. | 05033 | Mexico |
80 | Tortuga Restaurante | Miguel Angel Paolino | Avda. Azteca 123 | México D.F. | 05033 | Mexico |
4. AND, OR, NOT
ทั้ง 3 คำสั่งนี้เป็นคำสั่งทางลอจิก ซึ่งใช้ในการ filter ตามเงื่อนไขที่มากกว่า 1 เงื่อนไข
ตัวอย่างการใช้งาน
SELECT * FROM Customers
WHERE Country='Germany' AND City='Berlin';
ผลลัพธ์ที่ได้
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
ตัวอย่างการใช้งาน
SELECT * FROM Customers
WHERE City='Berlin' OR City='München';
ผลลัพธ์ที่ได้
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
1 | Alfreds
Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
25 | Frankenversand | Peter Franken | Berliner Platz 43 | München | 80805 | Germany |
ตัวอย่างการใช้งาน
SELECT * FROM Customers
WHERE NOT Country='Germany';
ผลลัพธ์ที่ได้
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
7 | Blondel père et fils | Frédérique Citeaux | 24, place Kléber | Strasbourg | 67000 | France |
8 | Bólido Comidas preparadas | Martín Sommer | C/ Araquil, 67 | Madrid | 28023 | Spain |
9 | Bon app' | Laurence Lebihans | 12, rue des Bouchers | Marseille | 13008 | France |
5. ORDER BY
เป็นคำสั่งที่ใช่การ Sorting หรือเรียงข้อมูล โดยมีตัวเลือก 2 แบบคือ ASC (Ascending) หรือ DESC (Descending) โดยค่าเริ่มต้นของ Order By จะเป็น ASC
ตัวอย่างการใช้งาน
SELECT * FROM Customers
ORDER BY Country;
ผลลัพธ์ที่ได้
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
12 | Cactus Comidas para llevar | Patricio Simpson | Cerrito 333 | Buenos Aires | 1010 | Argentina |
54 | Océano Atlántico Ltda. | Yvonne Moncada | Ing. Gustavo Moncada 8585 Piso 20-A | Buenos Aires | 1010 | Argentina |
64 | Rancho grande | Sergio Gutiérrez | Av. del Libertador 900 | Buenos Aires | 1010 | Argentina |
20 | Ernst Handel | Roland Mendel | Kirchgasse 6 | Graz | 8010 | Austria |
59 | Piccolo und mehr | Georg Pipps | Geislweg 14 | Salzburg | 5020 | Austria |
50 | Maison Dewey | Catherine Dewey | Rue Joseph-Bens 532 | Bruxelles | B-1180 | Belgium |
76 | Suprêmes délices | Pascale Cartrain | Boulevard Tirou, 255 | Charleroi | B-6000 | Belgium |
15 | Comércio Mineiro | Pedro Afonso | Av. dos Lusíadas, 23 | São Paulo | 05432-043 | Brazil |
21 | Familia Arquibaldo | Aria Cruz | Rua Orós, 92 | São Paulo | 05442-030 | Brazil |
31 | Gourmet Lanchonetes | André Fonseca | Av. Brasil, 442 | Campinas | 04876-786 | Brazil |
6. INSERT INTO
เป็นคำสั่งที่ใช้ในการนำข้อมูลใหม่ใส่เข้าในฐานข้อมูล
ตัวอย่างการใช้งาน
INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway');
ผลลัพธ์ที่ได้
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 | Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 | Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
92 | Cardinal | Tom B. Erichsen | Skagen 21 | Stavanger | 4006 | Norway |
7. NULL
เป็นเงื่อนไขหรือประเภทของข้อมูลที่มีไม่มีค่า
ตัวอย่างการใช้งาน
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address IS NOT NULL;
ผลลัพธ์ที่ได้
CustomerName | ContactName | Address |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 |
Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 |
Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 |
Around the Horn | Thomas Hardy | 120 Hanover Sq. |
Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 |
Blauer See Delikatessen | Hanna Moos | Forsterstr. 57 |
Blondel père et fils | Frédérique Citeaux | 24, place Kléber |
Bólido Comidas preparadas | Martín Sommer | C/ Araquil, 67 |
Bon app' | Laurence Lebihans | 12, rue des Bouchers |
Bottom-Dollar Marketse | Elizabeth Lincoln | 23 Tsawassen Blvd. |
... | ... | ... |
8. UPDATE
เป็นคำสั่งที่ใช้แก้ไขข้อมูลภายในฐานข้อมูล
ตัวอย่างการใช้งาน
UPDATE Customers
SET ContactName = 'Alfred Schmidt', City= 'Frankfurt'
WHERE CustomerID = 1;
ผลลัพธ์ที่ได้
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
1 | Alfreds Futterkiste | Alfred Schmidt | Obere Str. 57 | Frankfurt | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
9. DELETE
เป็นคำสั่งที่ใช้ลบข้อมูลภายในฐานข้อมูล
ตัวอย่างการใช้งาน
DELETE FROM Customers WHERE CustomerName='Alfreds Futterkiste';
ผลลัพธ์ที่ได้
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
ไม่มีความคิดเห็น:
แสดงความคิดเห็น