งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

CHAPTER 12 SQL. 2 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ Agenda ความเป็นมาของภาษา SQL คำสั่งเพื่อการจัดการฐานข้อมูล.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "CHAPTER 12 SQL. 2 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ Agenda ความเป็นมาของภาษา SQL คำสั่งเพื่อการจัดการฐานข้อมูล."— ใบสำเนางานนำเสนอ:

1 CHAPTER 12 SQL

2 2 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ Agenda ความเป็นมาของภาษา SQL คำสั่งเพื่อการจัดการฐานข้อมูล

3 3 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ Structured Query Language (SQL) ความเป็นมาของภาษา SQL - ในการสอบถามข้อมูลจากฐานข้อมูลนั้น คำถามของผู้ใช้ เรียกว่า “Query” และภาษาที่ใช้ในการสอบถามข้อมูล เรียกว่า “Query Language” - ในปัจจุบัน มีภาษาที่ใช้ในการสอบถามหลายภาษาที่ได้รับการ พัฒนาต่างกันไปตาม DBMS แต่ละตัว - อย่างไรก็ตาม SQL (Structural Query Language) ซึ่งพัฒนา โดยบริษัท IBM เป็นที่รู้จักและใช้กันอย่างแพร่หลาย - SQL ถือเป็นมาตรฐานที่ใช้ใน RDBMS หลายตัวที่มีใช้กันใน ปัจจุบัน

4 4 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SQL เป็นภาษาที่ใช้ในการติดต่อกับฐานข้อมูล หรือเป็นภาษาที่ใช้ ในการสั่งให้ฐานข้อมูลกระทำการใด ๆ ตามคำสั่งที่เราสั่ง ซึ่งในการ ติดต่อฐานข้อมูลนั้น ไม่ว่าจะเป็น SQL Server, Microsoft Access, MySQL,DB2 หรือแม้แต่ Oracle ก็จะต้องใช้คำสั่งภาษา SQL ในการควบคุมทั้งสิ้น

5 5 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ คำสั่งในภาษา SQL ประกอบด้วยชุดคำสั่งหลัก ๆ 3 ประเภท 1.DDL (Data Definition Language) เป็นชุดคำสั่งที่ใช้ในการ นิยาม กำหนด หรือ การสร้างข้อมูลบนฐานข้อมูล เช่น table, index, view ได้แก่ คำสั่ง CREATE TABLE, ALTER, DROP, CREATE VIEW เป็นต้น 2.DML (Data Manipulation Language) เป็นชุดคำสั่งที่ใช้ใน การประมวลผลหรือจัดการกับข้อมูลในฐานข้อมูล ได้แก่ คำสั่ง SELECT, INSERT, DELETE, UPDATE เป็นต้น 3.DCL (Data Control Language) เป็นคำสั่งที่ใช้ในการควบคุม สิทธิ์ของผู้ใช้ในการใช้ข้อมูล รวมทั้งส่วนที่ควบคุมการใช้งาน ฐานข้อมูลจากผู้ใช้หลาย ๆ คนพร้อมกัน ได้แก่ คำสั่ง GRANT, REVOKE เป็นต้น

6 6 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ CREATE DATABASE คำสั่ง CREATE TABLE ใช้ในการสร้าง database รูปแบบ CREATE DATABASE databasename โดย databasename คือชื่อของฐานข้อมูลที่จะสร้าง

7 7 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ DROP DATABASE คำสั่ง DROP DATABASE ใช้ในการลบ database รูปแบบ DROP DATABASE databasename โดย databasename คือชื่อของฐานข้อมูลที่จะลบ

8 8 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ CREATE TABLE คำสั่ง CREATE TABLE ใช้ในการสร้าง table รูปแบบ CREATE TABLE tablename ( field1 type (size)[NOT NULL][UNIQUE], field2 type (size) [NOT NULL][UNIQUE],..., [PRIMARY KEY (field)]); tablename ชื่อของตารางที่จะทำการสร้าง field ชื่อของฟิลด์ที่ต้องการสร้างในตาราง อย่างน้อยต้องมี 1 ฟิลด์ขึ้นไป type ชนิดของข้อมูลที่ทำการกำหนดให้ โดยชนิดของข้อมูลที่มีให้ใช้ จะขึ้นอยู่กับ DBMS size ขนาดของข้อมูลหรือขอบเขต NOT NULL การกำหนดให้ฟิลด์นั้นจะต้องมีค่าเสมอ UNIQUE การกำหนดให้ข้อมูลในฟิลด์ต้องไม่ซ้ำกันในแต่ละแถว PRIMARY KEY การกำหนดฟิลด์ที่จะเป็นคีย์หลัก

9 9 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ DROP TABLE คำสั่ง DROP TABLE ใช้ในการลบ table รูปแบบ DROP TABLE tablename โดย tablename คือชื่อของ table ที่จะลบ

10 10 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ CREATE TABLE ตัวอย่าง CREATE TABLE Author (Author_ID Integer NOT NULL, Author_UserName Text (15) NOT NULL, Author_PassWord Text (20) NOT NULL, Author_ Text (35) NOT NULL, Author_JoinDate DateTime NOT NULL, Author_LastVisit DateTime NOT NULL, Author_Login Integer, PRIMARY KEY (Author_ID));

11 11 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ ALTER TABLE.. ADD คำสั่ง ALTER TABLE ADD ใช้ในการเพิ่มฟิลด์ให้กับ table ที่ได้สร้างไว้แล้ว รูปแบบ ALTER TABLE tablename ADD (field1 type (size), field2 type (size),...); ตัวอย่าง ALTER TABLE Author ADD (Author_RealName text(15), Author_Gander BIT);

12 12 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ ALTER TABLE..DROP COLUMN คำสั่ง ALTER TABLE DROP ใช้ในการลบฟิลด์ให้กับ table ที่ได้สร้างไว้แล้ว รูปแบบ ALTER TABLE tablename DROP COLUMN (field1, field2,...); ตัวอย่าง ALTER TABLE Author DROP COLUMN (Author_RealName, Author_Gander);

13 13 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ DROP TABLE คำสั่ง DROP TABLE ใช้ในการลบ table ออกจากฐานข้อมูล รูปแบบ DROP TABLE tablename; ตัวอย่าง DROP TABLE Author;

14 14 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT คำสั่ง SELECT เป็นคำสั่งที่ใช้ในการค้นหาข้อมูลในฐานข้อมูล รูปแบบ SELECT select_list [INTO new_table] FROM table_name [WHERE search_condition] [GROUP BY group_by_expression] [HAVING search_condition] [ORDER BY order_expression [ASC|DESC]];

15 15 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT โดยที่ select_list หมายถึงชื่อของฟิลด์ที่ต้องการจะเลือก new_table หมายถึงเปลี่ยนชื่อตารางที่ค้นเป็นชื่อใหม่ table_name หมายถึงชื่อของตารางที่จะทำการค้น search_condition หมายถึงเงื่อนไขในการค้นหา group_by_expression หมายถึงการจัดกลุ่มของข้อมูลที่ถูกคำนวณ order_expression หมายถึงการเรียงลำดับผลการค้นหา ASC = น้อย ไปมาก, DESC = มากไปน้อย

16 16 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT, FROM, TOP, ORDER BY ตัวอย่าง 1) SELECT Author_ID, Author_UserName, Author_ FROM Author ORDER BY Author_ID ASC; เลือกฟิลด์ Author_ID, Author_UserName, Author_ จากตาราง Author โดยให้เรียงลำดับตาม Author_ID จาก น้อยไปมา 2)SELECT* FROM Author ORDER BY Author_ID ASC; เลือกทุกฟิลด์จากตาราง Author โดยเรียงลำดับตาม Author_ID จากน้อยไปมาก

17 17 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT, FROM, TOP, ORDER BY ตัวอย่าง 3) SELECT TOP 10 Author_ID, Author_UserName, Author_ FROM Author; เลือกฟิลด์ Author_ID, Author_UserName, Autho_ จากตาราง Author โดยเลือก 10 record แรก 4) SELECT TOP 10 PERCENT Author_ID, Author_UserName, Author_ FROM Author; เลือกฟิลด์ Author_ID, Author_UserName, Autho_ จากตาราง Author โดยเลือก 10% ของจำนวน record ทั้งหมด

18 18 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT DISTINCT คำสั่ง SELECT DISTINCT เป็นคำสั่งที่ใช้ในการตัดค่าที่ซ้ำกันออก ให้แสดงเพียงแค่ค่าเดียว ตัวอย่าง SELECT DISTINCT Profile_Location FROM Profile; Profile_IDProfile_NameProfile_Location 1user1Hongkong 2user2Jagata 3user3Jagata 4user4Hongkong 5user5Hongkong 6user6Hongkong 7user7Hongkong 8user8Hongkong 9user9Bangkok 10user10London Profile_Location Bangkok Hongkong Jagata London ผลลัพธ์

19 19 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT.. AS คำสั่ง SELECT.. AS เป็นคำสั่งที่ใช้ในการเปลี่ยนชื่อให้กับคอลัมน์ ในการเรียกดู ตัวอย่าง SELECT Profile_ID AS No, Profile_Name AS Name Profile_Location AS Address FROM Profile; Profile_IDProfile_NameProfile_Location 1user1Hongkong 2user2Jagata 3user3Jagata 4user4Hongkong 5user5Hongkong 6user6Hongkong 7user7Hongkong 8user8Hongkong 9user9Bangkok 10user10London NoNameAddress 1user1Hongkong 2user2Jagata 3user3Jagata 4user4Hongkong 5user5Hongkong 6user6Hongkong 7user7Hongkong 8user8Hongkong 9user9Bangkok 10user10London ผลลัพธ์

20 20 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT.. WHERE, AND, OR, NOT, IN, LIKE คำสั่ง SELECT.. WHERE เป็นคำสั่งในการค้นหาแบบมีเงื่อนไข ซึ่งในวลี WHERE จะมีส่วนสำคัญอยู่ 2 ส่วนคือ - ส่วนแรกเป็น โอเปอเรเตอร์ที่ใช้ในการเชื่อมเงื่อนไขหลาย ๆเงื่อนไข ไว้ด้วยกัน โอเปอเรเตอร์คำอธิบาย NOT มีความหมายเป็น "ไม่" ใช้ในการเปลี่ยนค่าความจริง ของ search_condition ให้เป็นตรงกันข้าม OR มีความหมายเป็น "หรือ" โดย Record ที่เลือกมาขอ แค่ให้ตรงตามเงื่อนไขเพียง 1 เงื่อนไขก็พอ ANDมีความหมายเป็น "และ" โดย Record ที่เลือกมาต้อง ให้ตรงตามเงื่อนไขทุกเงื่อนไข

21 21 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT.. WHERE, AND, OR, NOT, IN, LIKE - ส่วนที่2 เป็นโอเปอเรเตอร์ที่ใช้เพื่อกำหนดเงื่อนไขของ Record ที่ถูกเลือกขึ้นมาโดยมีโอเปอเรเตอร์ที่ใช้ดังนี้ โอเปอเรเตอร์คำอธิบาย =เท่ากับ <>ไม่เท่ากับ >มากกว่า >=มากกว่าหรือเท่ากับ !>ไม่มากกว่า <น้อยกว่า <=น้อยกว่าหรือเท่ากับ !<ไม่น้อยกว่า [NOT] BETWEEN... ANDระหว่าง [NOT] INเลือกเฉพาะในค่าที่กำหนด [NOT] LIKEใช้ในการเปรียบเทียบคำในรูปแบบ String เพื่อหาคำที่ต้องการ [NOT] NULLเลือกข้อมูลมี่ค่าเป็น NULL

22 22 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT.. WHERE ตัวอย่าง SELECT Profile_ID, Profile_Name, Profile_Location FROM Profile WHERE Profile_ID >= 4 AND Profile_ID <= 10; Profile_IDProfile_NameProfile_Location 4user4Hongkong 5user5Hongkong 6user6Hongkong 7user7Hongkong 8user8Hongkong 9user9Bangkok 10user10London ผลลัพธ์

23 23 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT.. WHERE.. IN ตัวอย่าง SELECT Profile_ID, Profile_Name, Profile_Age FROM Profile WHERE Profile_Age IN (23, 34); Profile_IDProfile_NameProfile_Age 1user423 5user534 7user723 9user934 ผลลัพธ์

24 24 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT.. WHERE.. LIKE เราสามารถใช้งานโอเปอเรเตอร์ LIKE ร่วมกับ Wildcards ซึ่งเป็น สัญลักษณที่ใช้แทนตัวอักษรต่างๆ เพียงบางส่วนในข้อมูล String ในการเลือกได้ โดยสัญลักษณและความหมายต่างๆของ Wildcards มีดังนี้ Wildcardsคำอธิบาย _ (ขีดล่าง)ใช้แทนตัวอักษรตัวใดตัวหนึ่งของ String %ใช้แทนข้อความอะไรก็ได้ [ ] ใช้แทนตัวอักษรเฉพาะบางตัวเช่น [abcde] หรือเป็นช่วงก็ได้เช่น [a - e] [^]มีความหมายตรงกันข้ามกับ [ ]

25 25 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT.. WHERE.. LIKE ตัวอย่าง SELECT Author_ID, Author_UserName, Author_Password FROM Author WHERE Author_Password LIKE '4[0-5]%'; ผลลัพธ์ Author_IDAuthor_UserNameAuthor_Password 1user user user user user

26 26 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT.. GROUP BY.. HAVING วลี GROUP BY จะถูกใช้เมื่อต้องการจัดกลุ่มที่ถูกคำนวณด้วย aggregate function ซึ่ง aggregate function คือฟังก์ชัน ที่ใช้ในการคำนวณค่าของข้อมูลหลายๆ คอลัมน์และคืนค่าออกมา เพียงค่าเดียวโดย aggregate function มีฟังก์ชันต่างๆ ดังนี้ aggregate functionคำอธิบาย AVGใช้ในการหาค่าเฉลี่ยในคอลัมน์ที่กำหนด MAXหาค่าสูงสุดในคอลัมน์ที่กำหนด MINหาค่าต่ำสุดในคอลัมน์ที่กำหนด SUMหาผลรวมในคอลัมน์ที่กำหนด COUNTนับจำนวนแถวในคอลัมน์ที่กำหนด STDEVหาค่าส่วนเบี่ยงเบนมาตรฐาน STDEVPหาค่าส่วนเบี่ยงเบนฐานนิยม VARหาค่าความแปรปรวน VARPหาค่าความแปรปรวนฐานนิยม

27 27 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT.. Aggregation function ตัวอย่าง SELECT Profile_ID, Profile_Name, Profile_Age FROM Profile WHERE Profile_ID >= 5 AND Profile_ID <= 8 ; ผลลัพธ์ Profile_IDProfile_NameProfile_Age 5user534 6user636 7user723 8user826 SELECT SUM(Profile_Age) As SumAge FROM Profile WHERE Profile_ID >= 5 AND Profile_ID <= 8; SumAge 119 ผลลัพธ์

28 28 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT.. GROUP BY.. HAVING ตัวอย่าง SELECT Profile_Location, SUM(Profile_Age) As SumAge FROM Profile GROUP BY Profile_Location ผลลัพธ์ Profile_LocationSumAge Bangkok34 Hongkong158 Jagata52 London30 SELECT Profile_Location, SUM(Profile_Age) As SumAge FROM Profile GROUP BY Profile_Location HAVING SUM(Profile_Age) > 35; ผลลัพธ์ Profile_LocationSumAge Hongkong158 Jagata52

29 29 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ Merging Data from Multiple tables : INNER JOIN ตัวอย่าง SELECT Profile.Profile_Name, Author.Author_ FROM Author INNER JOIN Profile ON Author.Author_ID = Profile.Author_ID;

30 30 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT SUBQUERY - การค้นหาข้อมูลโดยการใช้ SUBQUERY ทำให้สามารถค้นหา ข้อมูลในรูปแบบที่ซับซ้อนมากขึ้นได้ - SUBQUERY ก็คือการค้นหาข้อมูล จากข้อมูลที่เราได้ค้นหามาแล้ว - SUBQUERY คือการใช้คำสั่ง SELECT ซ้อนคำสั่ง SELECT นั่นเอง ตัวอย่าง SELECT Profile_Name,Profile_Age FROM Profile WHERE Profile_Age = (SELECT Profile_Age FROM Profile WHERE Profile_Name ='user1');

31 31 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ SELECT SUBQUERY SELECT Profile_Age FROM Profile WHERE Profile_Name ='user1' Profile_NameProfile_Age user123 Profile_NameProfile_Age user123 user723 SELECT Profile_Name,Profile_Age FROM Profile WHERE Profile_Age = (SELECT Profile_Age FROM Profile WHERE Profile_Name ='user1'); ผลลัพธ์

32 32 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ INSERT คำสั่ง INSERT ใช้ในการเพิ่ม record ลงใน table รูปแบบ INSERT INTO tablename (field1, field2,…,fieldN) VALUES (‘value1’, ‘value2’,…, ‘valueN’); ตัวอย่าง INSERT INTO Customer (ID,FirstName,LastName,Address) VALUES (‘501’, ‘Pakorn’, ‘Chaidee’, ‘Lampang’);

33 33 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ UPDATE คำสั่ง UPDATE ใช้ในการแก้ไขข้อมูลในฟิลด์ของแต่ละ record รูปแบบ ตัวอย่าง UPDATE Customer SET FirstName=‘Prakarn’ WHERE FirstName=‘Pakorn’ AND LastName=‘Chaidee’; UPDATE tableName SET field1=‘value1’, field2= ‘value2’, …, fieldN = ‘valueN’ WHERE condition;

34 34 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ DELETE คำสั่ง DELETE ใช้ในการลบ record ใน table รูปแบบ ตัวอย่าง DELETE FROM Customer WHERE FirstName=‘Prakarn’ AND LastName=‘Chaidee’; DELETE FROMtableName WHERE condition;


ดาวน์โหลด ppt CHAPTER 12 SQL. 2 PHP ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่ Agenda ความเป็นมาของภาษา SQL คำสั่งเพื่อการจัดการฐานข้อมูล.

งานนำเสนอที่คล้ายกัน


Ads by Google