1 / 73

คำสั่ง SQL

คำสั่ง SQL. วัตถุประสงค์. เรียนรู้คำสั่ง SQL พื้นฐานสำหรับการสร้างโครงสร้างของฐานข้อมูล เรียนรู้คำสั่งสำหรับการเรียกดูข้อมูล เรียนรู้คำสั่งสำหรับการ update ข้อมูล (เพิ่ม, ลบ, แก้ไข). SQL คืออะไร. SQL ( Structured Query Language ).

javen
Download Presentation

คำสั่ง SQL

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. คำสั่ง SQL

  2. วัตถุประสงค์ • เรียนรู้คำสั่ง SQL พื้นฐานสำหรับการสร้างโครงสร้างของฐานข้อมูล • เรียนรู้คำสั่งสำหรับการเรียกดูข้อมูล • เรียนรู้คำสั่งสำหรับการ update ข้อมูล (เพิ่ม, ลบ, แก้ไข)

  3. SQL คืออะไร SQL (Structured Query Language) เป็นภาษาทางด้านฐานข้อมูล ที่ได้รับความนิยมมากที่สุดภาษาหนึ่ง สามารถอ่านได้ทั้ง S-Q-L หรือ ‘Sequel’เป็นชุดคำสั่งที่ใช้จัดการฐานข้อมูลและข้อมูลในฐานข้อมูล

  4. กลุ่มคำสั่งของภาษา SQL 1. กลุ่มคำสั่ง Data Definition Language (DDL) เป็นกลุ่มคำสั่งที่ใช้สำหรับสร้างฐานข้อมูล และกำหนดโครงสร้างให้กับตาราง 2. กลุ่มคำสั่ง Data Manipulation Language (DML) เป็นกลุ่มคำสั่งที่ใช้สำหรับเพิ่ม ลบ หรือเปลี่ยนแปลงข้อมูล 3. กลุ่มคำสั่ง Data Query Language (DQL) เป็นกลุ่มคำสั่งที่ใช้สำหรับสร้างฐานข้อมูล และกำหนดโครงสร้างให้กับตาราง

  5. 1. การสืบค้นข้อมูลด้วยคำสั่ง SQL Name Subject Grade แสนดีVB A สุดสวยVBC สมบัติ Database B สมศักดิ์ Database B สมบูรณ์Database A สมหวังVBA SQL สืบค้นข้อมูล ฐานข้อมูล ข้อมูลผลลัพธ์

  6. 2. โครงสร้างคำสั่ง SQL สำหรับสืบค้นข้อมูล SELECT [ ALL | DISTRINCT ] { column_name/* } [ , column_name…] FROM table name [ , table_name…] [ WHERE condition ] [ GROUP BY column_name [,column_name] [HAVING condition ] ] [ORDER BY column_name1 [ASC|DESC] [,column_name2 [ASC|DESC]] [,.......,column_name n [ASC|DESC]] ]

  7. ตัวอย่างข้อมูล คำสั่ง SQL Books ผลลัพธ์จากการใช้คำสั่ง SQL Publisher

  8. 3. สืบค้นข้อมูลจากหนึ่งตาราง Syntax SELECT column_name /* [column_name …] FROM table_name

  9. 3. สืบค้นข้อมูลจากหนึ่งตาราง < ต่อ… > Detail * เครื่องหมายดอกจัน หมายถึง ทุกคอลัมน์ column_nameชื่อคอลัมน์ ( ฟิลด์ ) table_nameชื่อตาราง

  10. แสดงทุกแถวและคอลัมน์ SELECT * FROM Books Books BID Title PID Price 1001 Windows98 12 500 1002 Office97 12 150 1003 Java Vs C++ 05 250 1004 Database 04 155 1005 Netcape 04 490 1006 C Algorithm 12 1000 1007 Networking 04 1950 1008 Digitalimage

  11. แสดงทุกแถวและบางคอลัมน์แสดงทุกแถวและบางคอลัมน์ SELECT Title,Price FROM Books Books Title Price Windows98 500 Office97 150 Java Vs C++ 250 Database 155 Netcape 490 C Algorithm 1000 Networking 1950 Digitalimage

  12. 4. สืบค้นข้อมูลโดยมีเงื่อนไข Syntax SELECT column_name /* [column_name …] FROM table_name WHERE condition

  13. 4. สืบค้นข้อมูลโดยมีเงื่อนไข < ต่อ… > Detail * เครื่องหมายดอกจัน หมายถึง ทุกคอลัมน์ column_nameชื่อคอลัมน์ ( ฟิลด์ ) table_nameชื่อตาราง condition เงื่อนไขในการแสดงข้อมูลในแนวแถว

  14. 4. สืบค้นข้อมูลโดยมีเงื่อนไข < ต่อ… > Detail ชนิดเงื่อนไขเครื่องหมาย เปรียบเทียบ = > < >= <= <> รวบรวม AND , OR ปฏิเสธ NOT ตรวจสอบค่า NULL IS NULL ตรวจสอบช่วง BETWEEN…AND รายการ IN ตรวจสอบข้อความ LIKE

  15. 5. สืบค้นข้อมูลโดยมีเงื่อนไขเปรียบเทียบ Syntax SELECT column_name /* [column_name …] FROM table_name WHERE expression เงื่อนไขเปรียบเทียบexpression

  16. 5. สืบค้นข้อมูลโดยมีเงื่อนไขเปรียบเทียบ < ต่อ… > Detail Expression ชื่อคอลัมน์และค่าคงที่ เงื่อนไขเปรียบเทียบ = เท่ากับ > มากกว่า < น้อยกว่า >= มากกว่าหรือเท่ากับ <= น้อยกว่าหรือเท่ากับ <> ไม่เท่ากับ

  17. แสดงข้อมูลเงื่อนไขเปรียบเทียบแสดงข้อมูลเงื่อนไขเปรียบเทียบ SELECT Title,Price FROM Books WHERE Price < 1000 Books Title Price Windows98 500 Office97 150 Java Vs C++ 250 Database 155 Netcape 490

  18. แสดงข้อมูลเงื่อนไขเปรียบเทียบแสดงข้อมูลเงื่อนไขเปรียบเทียบ SELECT Title,Price FROM Books WHERE Price <= 1000 Books Title Price Windows98 500 Office97 150 Java Vs C++ 250 Database 155 Netcape 490 C Algorithm 1000

  19. แสดงข้อมูลเงื่อนไขเปรียบเทียบแสดงข้อมูลเงื่อนไขเปรียบเทียบ SELECT Title,Price FROM Books WHERE Price <> 1000 Books Title Price Windows98 500 Office97 150 Java Vs C++ 250 Database 155 Netcape 490 Networking 1950

  20. 6. สืบค้นข้อมูลโดยมีหลายเงื่อนไข Syntax SELECT column_name /* [ , column_name …] FROM table_name WHERE เงื่อนไขที่ 1 การรวมเงื่อนไข เงื่อนไขที่ 2 [ การรวมเงื่อนไข เงื่อนไขที่_ n ]

  21. 6. สืบค้นข้อมูลโดยมีหลายเงื่อนไข Detail Conditionเงื่อนไขต่างๆ การรวมเงื่อนไข AND การรวมเงื่อนไขแบบทั้งหมด OR การรวมเงื่อนไขแบบอย่างใดอย่างหนึ่ง

  22. แสดงข้อมูลหลายเงื่อนไขแสดงข้อมูลหลายเงื่อนไข SELECT Title,Price FROM Books WHERE ( Price > 500 ) OR ( PID < 12 ) Books Title Price Java Vs C++ 250 Database 155 Netcape 490 C Algorithm 1000 Networking 1950

  23. แสดงข้อมูลหลายเงื่อนไขแสดงข้อมูลหลายเงื่อนไข SELECT Title,Price FROM Books WHERE ( Price >= 500 ) AND ( Price <= 1000 ) Books Title Price windows98 500 C Algorithm 1000

  24. แสดงข้อมูลหลายเงื่อนไขแสดงข้อมูลหลายเงื่อนไข SELECT Title,Price FROM Books WHERE (( Price >= 500 ) AND ( Price <= 1000 )) OR ( PID = 4 ) Books Title Price windows98 500 Database 155 Netcape 490 C Algorithm 1000 Networking 1950

  25. 7. สืบค้นข้อมูลเงื่อนไขปฏิเสธ Syntax SELECT column_name /* [ , column_name …] FROM table_name WHERE เงื่อนไขปฏิเสธ condition

  26. 7. สืบค้นข้อมูลเงื่อนไขปฏิเสธ < ต่อ … > Detail Conditionเงื่อนไขใดๆ เงื่อนไขปฏิเสธ NOT ปฏิเสธ

  27. แสดงข้อมูลเงื่อนไขปฏิเสธแสดงข้อมูลเงื่อนไขปฏิเสธ SELECT Title,Price FROM Books WHERE NOT ( PID = 4 ) Books Title Price Windows98 500 Office97 150 Java Vs C++ 250 C Algorithm 1000

  28. 8. สืบค้นข้อมูลที่เป็นค่า NULL Syntax SELECT column_name /* [ , column_name …] FROM table_name WHERE expression IS [ NOT ] NULL

  29. 8. สืบค้นข้อมูลที่เป็นค่า NULL< ต่อ … > Detail NULLคือข้อมูลที่ไม่มีค่าใดๆ เมื่อมีการเพิ่มข้อมูลใน record โดยถ้าฟิลด์ใดไม่ได้ใส่ข้อมูลและฟิลด์ไม่มีการกำหนดค่า default ฟิลด์นั้นจะมีข้อมูลเป็น NULL

  30. แสดงข้อมูลที่เป็นค่า NULL SELECT Title,Price FROM Books WHERE Price IS NULL Books Title Price Digital Image

  31. แสดงข้อมูลที่ไม่เป็นค่า NULL SELECT Title , Price FROM Books WHERE Price IS NOT NULL Books Title Price Windows98 500 Office97 150 Java Vs C++ 250 Database 155 Netcape 490 C Algorithm 1000 Networking 1950

  32. 9. สืบค้นข้อมูลเป็นช่วง Syntax SELECT column_name /* [ , column_name …] FROM table_name WHERE expression [ NOT ] BETWEEN expression AND expression

  33. 9. สืบค้นข้อมูลเป็นช่วง < ต่อ … > Detail การสืบค้นข้อมูลแบบเว้นช่วงหมายถึงผู้ใช้สามารถระบุได้ว่าข้อมูล ระหว่างค่าไหนถึงค่าไหนที่จะถูกแสดงดังนั้นการสืบค้นข้อมูลแบบนี้จะใช้รูปแบบ BETWEEN…. AND …. เช่น column_name BETWEEN 10 AND 20 มีค่าเท่ากับ (( cloumnb_name >= 10 ) AND ( column _name <= 20))

  34. แสดงข้อมูลที่เป็นช่วงแสดงข้อมูลที่เป็นช่วง SELECT Title , Price FROM Books WHERE Price BETWEEN 500 AND 1000 Books Title Price Windows98 500 C Algorithm 1000

  35. แสดงข้อมูลที่เป็นช่วงแสดงข้อมูลที่เป็นช่วง SELECT Title , Price FROM Books WHERE Price NOT BETWEEN 500 AND 1000 Books Title Price office97 150 JAVA Vs C++ 250 Database 155 Netcape 490 Networking 1950

  36. 10. สืบค้นข้อมูลตามค่าที่ต้องการ Syntax SELECT */ column_name [ , column_name …] FROM table_name WHERE expression [ NOT ] IN (value_list)

  37. 10. สืบค้นข้อมูลตามค่าที่ต้องการ < ต่อ … > Detail value_list คือค่าที่ข้อมูลที่แสดงเป็นรายการ เช่น รายการตัวเลขคี่ระหว่าง 1 ถึง 10 ( 1 , 3 , 5 , 7 , 9 ) รายการชื่อคน ( “สมชาย” , ”สมพงษ์” , ”สมศักดิ์” )

  38. แสดงข้อมูลตามค่า SELECT Title , Price FROM Books WHERE Price IN (250,500,750 ,1000) Books Title Price Windows98 500 JAVA Vs C++ 250 C Algorithm 1000

  39. แสดงข้อมูลตามค่า SELECT Title , Price FROM Books WHERE Price NOT IN (250 ,500,750 ,1000) Books Title Price office97 150 Database 155 Netcape 490 Networking 1950

  40. 11. สืบค้นข้อมูลตามส่วนข้อความ Syntax SELECT */ column_name [ , column_name …] FROM table_name WHERE expression [ NOT ] LIKE ‘string’

  41. 11. สืบค้นข้อมูลตามส่วนข้อความ < ต่อ … > Detail String คือ ส่วนของข้อความ เช่น “สม” หรือ ”พง” เป็นส่วนของคำว่า ”สมพงษ์” “m”,”i”,”o”,”f”,”t” เป็นส่วนของคำว่า ”microsoft” % , * ส่วนของข้อความใดๆไม่จำกัดตัวอักษร (* In MS Access) _ , ? ส่วนของข้อความใดๆหนึ่งตัวอักษร (? In MS Access) [ ] ตัวอักษรใดๆที่ปรากฎในช่อง [a] หมายถึงต้องเป็น a [!] ตัวอักษรใดๆที่ไม่ปรากฎในช่อง [!a] หมายถึงต้องไม่เป็น a [-] ช่วงตัวอักษร เช่น [a - c] หมายถึง a , b , c

  42. แสดงข้อมูลตามส่วนข้อความแสดงข้อมูลตามส่วนข้อความ SELECT Title , Price FROM Books WHERE Title LIKE ‘N*’ Books Title Price Netcape 490 Networking 1950

  43. แสดงข้อมูลตามส่วนข้อความแสดงข้อมูลตามส่วนข้อความ SELECT Title , Price FROM Books WHERE Title LIKE ‘ *C* ’ Books Title Price office97 150 JAVA Vs C++ 250 Netcape 490 c Algorithm 1000

  44. แสดงข้อมูลตามส่วนข้อความแสดงข้อมูลตามส่วนข้อความ SELECT Title , Price FROM Books WHERE Title LIKE ‘?e*’ Books Title Price Netcape 490 Networking 1950

  45. แสดงข้อมูลตามส่วนข้อความแสดงข้อมูลตามส่วนข้อความ SELECT Title , Price FROM Books WHERE Title LIKE ‘[N,O]*’ Books Title Price Office97 150 Netcape 490 Networking 1950

  46. แสดงข้อมูลตามส่วนข้อความแสดงข้อมูลตามส่วนข้อความ SELECT Title , Price FROM Books WHERE Title LIKE ‘[!N]*’ Books Title Price Windows98 500 Office97 150 JAVA Vs C++ 250 Database 155 C Algorithm 1000

  47. 12. การกำจัดรายการซ้ำ Detail คำสั่ง DISTINCT ใช้กำจัดรายการที่มีข้อมูลซ้ำกันให้เหลือเพียงรายการเดียว โดยใช้ข้อมูลใน Field ต่างๆที่กำหนดในคำสั่ง SELECT เป็นเกณฑ์ คำสั่ง DISTINCTROW ทำหน้าที่เช่นเดียวกับคำสั่ง DISTINCT แต่จะใช้ค่าของทุก Field เป็นเกณฑ์แทน

  48. การกำจัดรายการซ้ำ SELECT DISTINCT NAME FROM STUDENT STUDENT NAME แดง เขียว ฟ้า NAMESURNAME แดง ร่าเริง เขียว สดชื่น ฟ้า สีคราม แดง สดใส SELECT DISTINCTROW NAME,SURNAME FROM STUDENT

  49. 13. การเรียงลำดับข้อมูล SELECT * FROM Books ORDER BY PRICE คำสั่ง ORDER BY

  50. 13. การเรียงลำดับข้อมูล (ต่อ) SELECT * FROM Books ORDER BY PRICE DESC คำสั่ง ORDER BY

More Related