ตัวอย่าง คำสั่ง
1.สร้าง DATABASE
mysql > create database
<ชื่อdatabase>;
เช่น
create database world;
2.สร้าง table
mysql > create table <ชื่อtable> (<ชื่อข้อมูล>
<ชนิดข้อมูล>, ... );
เช่น create
table human (name VARCHAR(20), birth DATE, sex CHAR(1));
ชนิดข้อมูล เช่น
VARCHAR(n) - ข้อมูลชนิด
string เก็บแบบ linked list เหมาะสมกับข้อมูลที่มีความยาวที่ไม่แน่นอน
CHAR(n) - ข้อมูลชนิด
string เก็บแบบ array เหมาะสมกับข้อมูลที่มีความยาวที่แน่นอน
INT - จำนวนเต็ม
DATE - ข้อมูลชนิดพิเศษของ
SQL ใช้เก็บวันที่ มีรูปแบบเป็น YYYY-MM-DD
3.การสืบค้นข้อมูล หรือการดูข้อมูล
SELECT <สิ่งที่ต้องการ>
FROM <ชื่อtable>
WHERE <เงื่อนไขอื่นๆ>
เช่นต้องการชื่อของข้อมูลในตาราง human ที่มีมีเพศชาย
SELECT name
FROM human
WHERE sex = ‘M’;
ต้องการดูข้อมูลทั้งหมดในตาราง human [*
คือทั้งหมด]
SELECT *
FROM human;
ซึ่งการกำหนดเงื่อนไขนั้นเราสามารถใช้ตัวแปรทางคณิตศาสตร์ตรรกะ
มาช่วยได้เช่น
AND และ
OR หรือ
< น้อยกว่า
> มากกว่า
<= น้อยกว่าหรือเท่ากับ
>= มากกว่าหรือเท่ากับ
<> ไม่เท่ากับ
UNION การนำ
2 ตารางมาเชื่อมต่อกันตัดตัวซ้ำ
UNION ALL การนำ
2 ตารางมาเชื่อมกันโดยไม่ตัดตัวซ้ำ
INTERSECT ข้อมูลที่ซ้ำกัน
4.ORDER BY เรียงลำดับข้อมูล การจัดกลุ่มข้อมูล
เรียงลำดับจากมากไปน้อย (descending
order)
เช่น SELECT *
FROM human
ORDER BY name;
เรียงลำดับจากน้อยไปมาก (descending
order)
เช่น SELECT *
FROM human
ORDER BY name DESC;
ถ้าต้องการมากกว่าอันนึงก็ย่อมได้
เช่น SELECT *
FROM human
ORDER BY name , sex
DESC ;
แบบนี้จะจัดตามชื่อแบบ ascending ก่อนแล้วจะมาจัดเพศแบบ
descending ทีหลัง
5.การใช้ตัวแปร NULL ในเงื่อนไข
ใช้คำสั่ง xxx IS NOT NULL เช่นต้องการดูสิ่งมีชีวิตที่ไม่มีเพศ
SELECT *
FROM human
WHERE sex IS NOT
NULL;
6.การตั้งชื่อเป็นชื่อที่เราต้องการ
หมายถึงเวลา select บางทีคนทั่วไปอาจจะไม่เข้าใจว่าคืออะไร
เราจึงมีคำสั่ง AS ช่วย เช่น
SELECT name AS
‘NAME-SURNAME’
FROM human;
7.COUNT การนับจำนวน + GROUP BY การจัดกลุ่ม
COUNT ใช้ในการนับจำนวนของตารางต่างๆ
จะใช้คู่กับ GROUP BY ได้ดีเพราะจะช่วยในการจัดกลุ่มชุดข้อมูลได้ดีขึ้น
SELECT <อื่นๆ>
COUNT(*)
FROM <ชื่อtable>
WHERE <เงื่อนไข>
GROUP BY <จัดกลุ่มโดยใช้อะไร>
เช่นต้องการนับจำนวนคนในแต่ละเพศ
SELECT sex , COUNT(*)
FROM human
GROUP BY sex;
SET การกำหนดตัวแปร
SET @<ชื่อตัวแปร>
= <ค่า>
เช่น SET
@A1 = ‘Natsu Sencho’;
SET @A2 =
‘1999-09-09’;
8.คำสั่งแบบหลายเงื่อนไข
Select <filed_1 ,
filed_2 , … , filed_n / * >
From
<Table_name>
Where <
condition-1 >
<And / Or >
<condition-2> ;
And ให้ผลเหมือนการ Intersection
Or ให้ผลเหมือนการ Union
เช่น
Select * from work
Where proj_num = 15 ; (เลือกข้อมูลการทำงานโครงการ
15)
Select * from work
Where hours > 3 ; (เลือกข้อมูลการทำงานที่มากกว่า 3
ชั่วโมง)
Select * from employee
where job = "Programmer"
; (เลือกพนักงานที่เป็น Programmer)
9.คำสั่งแบบหลายเงื่อนไข
Select <filed_1 ,
filed_2 , … , filed_n / * >
From
<Table_name>
Where <
condition-1 >
<And / Or >
<condition-2> ;
And ให้ผลเหมือนการ Intersection
Or ให้ผลเหมือนการ Union
เช่น select * from work
where proj_num =
15 and hours > 3 ;
(เลือกพนักงานที่ทำงานโครงการ 15
และทำงานมากกว่า 3 ชั่วโมง : ต้องอยู่โครงการ 15)
select * from work
where proj_num =
15 or hours > 3 ;
(เลือกพนักงานที่ทำงานโครงการ 15
หรือทำงานมากกว่า 3 ชั่วโมง : อาจทำงานอยู่โครงการอื่น)
10.คำสั่งที่มีการใช้งานหลายตาราง (join)
Select <filed_1 ,
filed_2 , … , filed_n / * >
From <table_1 ,
table_2 , …, table_n>
Where <
condition-1 > ;
1. ต้องมีการเชื่อม
PK และ FK ของทั้งสองตารางเข้าด้วยกัน (Join)
2.หากมี
field ใดที่ชื่อซ้ำกันทั้งสองตาราง
เมื่ออ้างถึง ต้อง ระบุชื่อตาราง ตามด้วยชื่อฟิลด์ เช่น
work.emp_num
หรือ employee.emp_num
เช่น Select employee.emp_num , emp_name , hours
From employee ,
work
Where
employee.emp_num = work.emp_num ;
( แสดงข้อมูลรหัสพนักงาน ชื่อพนักงาน
และชั่วโมงทำงาน
เนื่องจาก
ชื่อพนักงาน อยู่คนละตารางกับ ข้อมูลชั่วโมงทำงาน
จึงต้องมีการ join ตารางที่มีข้อมูลเข้าด้วยกัน)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น