LOGO ภาษามาตรฐานสาหรับนิยามข้อมูล และการใช้ข้อมูล SQL - Structure Query Language 1
วตั ถุประสงค์ สามารถอธิบายแนวคิดและการใช้ SQL ได้ นา SQL ไปใชเ้ พื่อใหเ้ กิดประโยชน์ได้
ภาษา SQL สามารถสร้างและปฏิบตั ิการกบั ฐานขอ้ มูลเชิงสมั พนั ธ์โดยเฉพาะ Structured Query Language สาหรับใชก้ บั Relational Database อยใู่ นรูปแบบของภาษาองั กฤษ
ภาษา SQL •Structured Query Language
ภาษา SQL
ภาษา SQL
ภาษา SQL สาหรับใชก้ บั Relational Database select name from student
ประเภทของคาส่ังของภาษา SQL 1. ภาษาสาหรับการนิยามข้อมูล (Data Definition Language : DDL) 2. ภาษาสาหรับการจดั การข้อมูล (Data Manipulation Language : DML) 3. ภาษาควบคุม (Data Control Language : DCL)
1. Data Definition Language : DDL เป็ นกล่มุ คาส่ังทใี่ ช้กระทากบั โครงสร้างของ ฐานข้อมูล ตัวอย่างคาส่ัง เช่น CREATE ใช้สร้างตาราง ALTER ใช้แก้ไข/เปลยี่ นแปลงตาราง DROP ใช้สาหรับลบตาราง
ชนิดของข้อมูลทใ่ี ช้ในภาษา SQL จานวนเลข (Number) • เลขจานวนจริง (Number) เกบ็ เลขทเี่ ป็ นจานวนเตม็ หรือ เป็ นทศนิยม รูปแบบทใี่ ช้คอื NUMBER • เลขจานวนเต็ม (Integer) รองรับเลขได้ 11 หลกั รูปแบบ ทใี่ ช้คอื INTEGER หรือ INT • เลขจานวนเตม็ ขนาดเลก็ (Small integer) รองรับเลขได้ 6 หลกั รูปแบบทใ่ี ช้คอื SMALLINT • เลขทศนิยม (Decimal) รูปแบบทใี่ ช้คอื DECIMAL
ชนิดของข้อมูลทใ่ี ช้ในภาษา SQL ตัวหนังสือ • ความยาวคงท่ี (Fixed-length Character) เกบ็ ข้อมูลได้ สูงสุด 255 ตวั อกั ษร รูปแบบทใ่ี ช้คอื CHAR • ความยาวไม่คงท่ี เกบ็ ข้อมูลได้สูงสุด 255 ตัวอกั ษร (Variable-length Character) รูปแบบทใ่ี ช้คอื VARCHAR ข้อมูลในลกั ษณะอนื่ ๆ • วนั ทแี่ ละเวลา (Date/Time) รูปแบบทใ่ี ช้คอื DATE
ชนิดของข้อมูลใน Microsoft Access ในโปรแกรม Microsoft Access สามารถใช้ชนิดข้อมูล ตามมาตรฐานของ SQL ได้ หรือสามารถใช้ชนิดข้อมูลของ Microsoft Access ท่ี ระบุขนึ้ เองกไ็ ด้ อาทเิ ช่น Text ตวั อกั ษร Number ตัวเลข Date/Time วนั ทแ่ี ละเวลา
ชนิดของข้อมูลใน Oracle สิ่งที่กาหนดในโครงสร้างเทเบิล ไดแ้ ก่ คอลมั น์ ซ่ึงจะตอ้ งระบุประเภทขอ้ มลู ท่ีจดั เกบ็ ตวั อกั ษร จานวนเลข วนั ท่ี ออบเจค็ ตห์ รือไบนารี (Binary) โดยแบ่ง ประเภทของขอ้ มูลไดด้ งั ต่อไปน้ี กล่มุ ประเภท ประเภทข้อมูล ความหมายของประเภท ตวั อกั ษร CHAR(n) จดั เกบ็ ตวั อกั ษรหรือตวั เลขที่ไม่ไดน้ าไปคานวน โดย (Character) มีการกาหนดความยาวแบบคงท่ี และจดั เกบ็ ตามความ ยาวที่กาหนดไว้ และจดั เกบ็ ไดส้ ูงสุด 2,000 ไบต์ VARCHAR2(n) จดั เกบ็ ตวั อกั ษรหรือตวั เลขท่ีไม่ไดน้ าไปคานวน โดย ความยาวที่กาหนดควเป็นแบบยดื หยนุ่ เกบ็ ตามความ เป็นจริง แตไ่ ม่เกินท่ีหนด และจดั เกบ็ ไดส้ ูงสุด 4,000 ไบต์
ชนิดของข้อมูลใน Oracle กลุ่มประเภท ประเภทข้อมูล ความหมายของประเภท จดั เกบ็ ตวั เลขที่สามารถนาไปคานวณได้ โดยกาหนดได้ ท้งั จานวนเตม็ และทศนิยม โดยท่ี P คือความยาวท้งั หมด (รวมความยาว s ดว้ ย) s คือความยาวของทศนิยม เช่น ตวั เลข ขอ้ มูลจริง ประเภทขอ้ มลู ค่าที่เกบ็ (Number) NUMBER(p,s) 123.89 NUMBER 123.89 NUMBER(3) 124 123.89 NUMBER(5,2) 123.89 123.89 NUMBER(6,-2) 100 123.89 NUMBER(4,5) 0.01234 0.01234 NUMBER(4,5) 0.01235 0.012345
ชนิดของข้อมูลใน Oracle กล่มุ ประเภท ประเภทข้อมูล ความหมายของประเภท DATE จดั เกบ็ วนั ที่และเวลาไดแ้ ก้ ศตวรรษ ปี เดือน วนั ชว่ั โมง วนั ท่ี (Date) นาที และวนิ าที ซ่ึงสามารถแสดงผลไดท้ ้งั ตวั อกั ษรและ ตวั เลข โดยใชร้ ่วมกบั ฟังชน่ั TO_CHAR BLOP จดั เกบ็ แบบไบนารี ไดแ้ ก่ รูปภาพ และเสียง โดยสามารถ จดั เกบ็ ไดส้ ูงสุด 4 กิกะไบต์ LARGE BFILE จดั เกบ็ แบบไฟลไ์ บนารี (Binary File) ไดแ้ ก่ ไดเรกทอรี OBJECT (Directory) และชื่อไฟล์ (Filename) CLOB จดั เกบ็ แบบตวั อกั ษรที่มีความยาวมาก ๆ โดยสามารถ จดั เกบ็ ไดส้ ูงสุด 4 กิกะไบต์
คาส่ัง SQL : DDL CREATE TABLE : สร้างตาราง รูปแบบการใช้คาส่ัง CREATE TABLE ช่ือตาราง ( ชื่อคอลมั น์1 ประเภทข้อมูล Constraint, ช่ือคอลมั น์2 ประเภทข้อมลู Constraint, PRIMARY KEY (ช่ือคอลมั น์) , FOREIGN KEY (ช่ือคอลมั น์ ) REFERENCES ชื่อตาราง, );
คาสั่ง SQL : DDL • CREATE TABLE ชื่อตาราง – ตวั อยา่ ง ชนิดขอ้ มลู Constraint CREATE TABLE EMPLOYEE ( ID CHAR(5) NOT NULL , NAME VARCHAR(35) NOT NULL , ADDRESS VARCHAR(15) NOT NULL , PHONE CHAR(8) NOT NULL , E-MAIL CHAR(1) NOT NULL , PRIMARY KEY (ID) ); ให้ ID เป็น PK
คาสั่ง SQL : DDL CREATE TABLE PRODUCT ( P_CODE VARCHAR(10) NOT NULL , P_DESCRIPT VARCHAR(35) NOT NULL , P_INDATE DATE NOT NULL , P_ONHAND SMALLINT NOT NULL , P_MIN SMALLINT NOT NULL , P_PRICE NUMBER NOT NULL , P_DISCOUNT NUMBER NOT NULL , ID CHAR(5) , ให้ ID เป็น FK PRIMARY KEY (P_CODE) , FOREIGN KEY (ID) REFERENCES EMPLOYEE(ID) );
คาสั่ง SQL : DDL ALTER TABLE : เปลย่ี นแปลงตาราง รูปแบบการใช้คาสั่ง ALTER TABLE ช่ือตาราง (คาส่ังการเปลย่ี นแปลง ช่ือคอลมั น์ ชนิดข้อมลู ); - คาส่ังการเปลยี่ นแปลง เช่น - ADD เพม่ิ คอลมั น์ - ALTER เปลย่ี นแปลงชนิดข้อมูล - DROP ลบคอลมั น์
คาสั่ง SQL : DDL ALTER TABLE : เปลย่ี นแปลงตาราง ตวั อย่าง • ALTER TABLE PRODUCT ADD SALECODE VARCHAR(10); • ALTER TABLE PRODUCT ALTER Column SALECODE VARCHAR(50); • ALTER TABLE PRODUCT DROP SALECODE;
คาส่ัง SQL : DDL DROP TABLE : ลบตาราง รูปแบบการใช้คาสั่ง DROP TABLE ช่ือตาราง; ตัวอย่าง DROP TABLE PRODUCT; DROP TABLE EMPLOYEE; DROP TABLE PROJECT;
2. Data Manipulation Language : DML เป็ นกล่มุ คาส่ังทกี่ ระทากบั ข้อมูลในฐานข้อมูล ตวั อย่างคาส่ัง เช่น SELECT ใช้เรียกข้อมูลในตารางมาแสดงผล INSERT ใช้เพมิ่ ข้อมูลเข้าไปในตาราง UPDATE ใช้แก้ไขข้อมูลในตาราง DELETE ใช้ลบข้อมูลในตาราง
คาสั่ง SQL : DML SELECT <การเรียกดูข้อมูล> การเรียกดูข้อมูลในคอลมั น์ทต่ี ้องการ •รูปแบบ SELECT ชื่อคอลมั น์ทตี่ ้องการดูข้อมูลที่ 1, ชื่อคอลมั น์ท่ี 2,…,ชื่อคอลมั น์ที่ n FROM ช่ือตาราง ;
คาสั่ง SQL : DML Employees Emp_ID First_name Last_name Address 001 สมชาย ชาตรี เชียงใหม่ อุตรดิตถ์ 002 สมหญิง งามแท้ ตวั อย่าง แสดงชื่อและนามสกลุ ของพนักงาน SELECT First_name, Last_name FROM Employees ; First_name Last_name สมชาย ชาตรี สมหญิง งามแท้
คาสั่ง SQL : DML SELECT <การเรียกดูข้อมูล> การเรียกดูข้อมูลในทุก ๆ คอลมั น์ •รูปแบบ SELECT * FROM ชื่อตาราง ;
คาส่ัง SQL : DML Employees Emp_ID First_name Last_name Address 001 สมชาย ชาตรี เชียงใหม่ อุตรดิตถ์ 002 สมหญิง งามแท้ ตวั อย่าง แสดงข้อมูลท้งั หมดของพนักงาน SELECT * FROM Employees ; Emp_ID First_name Last_name Address 001 สมชาย ชาตรี เชียงใหม่ 002 สมหญิง งามแท้ อุตรดิตถ์
คาสั่ง SQL : DML SELECT <การเรียกดูข้อมูลเฉพาะบางแถวทตี่ รงตามเงอ่ื นไข> การเรียกดูข้อมูลในคอลมั น์ทตี่ ้องการ •รูปแบบ SELECT ช่ือคอลมั น์ทตี่ ้องการดูข้อมูลที่ 1, ชื่อคอลมั น์ที่ 2,…,ช่ือคอลมั น์ท่ี n FROM ช่ือตาราง WHERE เง่อื นไข ; โดยภายในเงอ่ื นไขประกอบด้วย เงือ่ นไข => คอลมั น์ทเ่ี ป็ นเงื่อนไข Operator Value
คาส่ัง SQL : DML Employees Emp_ID First_name Last_name Address 001 สมชาย ชาตรี เชียงใหม่ 002 สมหญิง งามแท้ อุตรดิตถ์ ตวั อย่าง แสดงชื่อ นามสกลุ และทอ่ี ย่ขู องพนักงาน โดยจะแสดงข้อมูลเฉพาะพนักงาน ทอี่ ยู่จังหวดั อุตรดติ ถ์ SELECT First_name, Last_name, Address Address คอลมั นท์ ี่เป็นเงื่อนไข = คือ operator FROM Employees WHERE Address = ‘อุตรดติ ถ์’; อุตรดิตถ์ คือ value First_name Last_name Address สมหญิง งามแท้ อุตรดิตถ์
Operator (ตวั ปฏิบตั ิการ) ทใี่ ช้ใน Where Operator ทีส่ ามารถใช้กาหนดเงื่อนไขใน where มีดงั นี้ ตัวเปรียบเทยี บ (Comparison operators) ได้แก่เคร่ืองหมาย =, <, >, <=, >=, <> ตัวปฏิบตั กิ ารทางด้านลอจกิ (Logical operators) AND เช่ือมต่อเงอ่ื นไขในกรณีทมี่ ีมากกว่า 1 เงอ่ื นไข OR NOT
Operators ในการเปรียบเทยี บ ตวั Operators ในการเปรียบเทียบ – = เท่ากบั – < น้อยกว่า – <= น้อยกว่าหรือเท่ากบั – > มากกว่า – >= มากกว่าหรือเท่ากบั – <> หรือ != ไม่เท่ากบั
Operators ทางลอจิก ตวั Logical operators – AND และ – OR หรือ – NOT ตรงกนั ข้าม, ไม่เท่ากบั
Operator (ตัวปฏิบตั กิ าร) ท่ใี ช้ใน Where ตัวปฏิบตั ิการพเิ ศษ (Special operators) BETWEEN…AND…. ตรวจสอบช่วงของค่าใน Attribute IS NULL ตรวจสอบว่ามีค่าว่างหรือไม่ IS NOT NULL ตรวจสอบว่าไม่มคี ่าว่างหรือไม่ LIKE ตรวจสอบค่า String ใน Attribute ว่ามสี ่วน คล้ายกบั ทีก่ าหนดไว้หลงั LIKE หรือไม่ IN ตรวจสอบค่าใน Attribute ว่าตรงกนั กบั ท่ี กาหนดไว้หลงั IN หรือไม่ EXISTS ตรวจสอบว่ามีการ Return ค่าของ Subquery หรือไม่ DISTINCT จากดั ค่าให้แสดงผลโดยค่าไม่ซ้ากนั
ตัวอย่างการใช้ AND Employees Emp_ID First_name Last_name Address Salary 001 15000 สมชาย ชาตรี เชียงใหม่ 002 สมหญิง งามแท้ อุตรดิตถ์ 6000 ตวั อย่าง แสดงชื่อ นามสกลุ ทอ่ี ยู่ และเงนิ เดอื น โดยจะแสดงข้อมูลเฉพาะพนักงานทอี่ ยู่ จังหวดั อุตรดติ ถ์และมเี งินเดอื นมากกว่า 5000 บาท จากโจทย์ ส่ิงทต่ี ้องแสดงคอื ช่ือ นามสกลุ เงนิ เดอื น จากตาราง พนักงาน เงอื่ นไข พนักงานคนน้ันต้องอย่จู งั หวดั อตุ รดติ ถ์ และมเี งินเดอื น มากกว่า 5000 บาท คอลมั น์เงือ่ นไข Address และ Salary
ตวั อย่างการใช้ AND จากโจทย์จะเห็นว่า มสี องเงื่อนไข และต้องเป็ นจริงท้งั สองเงอื่ นไข ดงั น้ันจงึ ต้องใช้ AND เช่ือมระหว่าง 2 เงอ่ื นไขนี้ เขียน SQL ได้ดงั นี้ SELECT First_name, Last_name, Address, Salary FROM Employees WHERE Address = ‘อตุ รดติ ถ์’ AND Salary > 5000; First_name Last_name Address Salary สมหญิง งามแท้ อุตรดิตถ์ 6000 จะเห็นว่าผลลพั ธ์ทไ่ี ด้พนักงานคนน้ันต้องอย่อู ุตรดติ ถ์และมเี งนิ เดอื นมากกว่า 5000
ตัวอย่างการใช้ OR Employees Emp_ID First_name Last_name Address Salary 001 15000 สมชาย ชาตรี เชียงใหม่ 002 สมหญิง งามแท้ อุตรดิตถ์ 6000 ตวั อย่าง แสดงชื่อ นามสกลุ ทอ่ี ยู่ และเงนิ เดอื น โดยจะแสดงข้อมูลเฉพาะพนักงานทอ่ี ยู่ จังหวดั อุตรดติ ถ์ หรือมเี งนิ เดอื นมากกว่า 5000 บาท จากโจทย์ สิ่งทตี่ ้องแสดงคอื ช่ือ นามสกลุ เงินเดอื น จากตาราง พนักงาน เงื่อนไข พนักงานคนน้ันต้องอย่จู งั หวดั อุตรดติ ถ์ หรือมีเงนิ เดอื น มากกว่า 5000 บาท คอลมั น์เงอื่ นไข Address และ Salary
ตวั อย่างการใช้ OR จากโจทย์จะเห็นว่า มสี องเงอ่ื นไข แต่โจทย์ใช้คาว่าหรือ แสดงว่ามีเงอ่ื นไขใดเงอ่ื นใดหนึ่ง เป็ นจริง หรือเป็ นจริงท้งั สองเงอื่ นไขกไ็ ด้ ดงั น้ันจงึ ต้องใช้ OR เชื่อมระหว่าง 2 เงอื่ นไขนี้ เขียน SQL ได้ดงั นี้ SELECT First_name, Last_name, Address, Salary FROM Employees WHERE Address = ‘อตุ รดติ ถ์’ OR Salary > 5000; Emp_ID First_name Last_name Address Salary 001 15000 002 สมชาย ชาตรี เชียงใหม่ 6000 สมหญิง งามแท้ อุตรดิตถ์ จะเห็นว่าผลลพั ธ์ทไ่ี ด้ สมชายไม่ได้อยู่จังหวดั อุตรดติ ถ์ แต่ทส่ี มชายแสดงในผลลพั ธ์ เพราะมเี งนิ เดอื นมากกว่า 5000 สรุป ผลลพั ธ์ทไี่ ด้จาก OR เข้าเงอ่ื นไขใดเงอ่ื นไขหน่ึงกเ็ ป็ นจริงแล้ว
การใช้ Between…AND…. Between…AND… <กาหนดเงื่อนไขให้กบั where โดยเลอื กช่วงข้อมูลทสี่ นใจ> การกาหนดเงอื่ นไข โดยทสี่ ามารถกาหนดช่วงข้อมูลได้ •รูปแบบ SELECT ช่ือคอลมั น์ทตี่ ้องการดูข้อมูลที่ 1, ชื่อคอลมั น์ที่ 2,…,ชื่อคอลมั น์ท่ี n FROM ช่ือตาราง WHERE ชื่อคอลมั น์ Between Value1 AND value2 ; ใน oracle การกาหนดช่วงข้อมูล จะรวมค่า Value1 และ Value2 ด้วย เช่น WHERE Salary Between 4800 AND 12000 ผลลพั ธ์ท่ีจะได้จะแสดงเงินเดอื นต้งั แต่ 4800 จนถงึ 12000
การใช้ Between…AND…. Emp_ID First_name Last_name Address Salary Employees 001 สมชาย ชาตรี เชียงใหม่ 15000 002 สมหญิง งามแท้ อุตรดิตถ์ 6000 003 สมใจ สุขสม แพร่ 5000 ตวั อย่าง แสดงช่ือ และเงนิ เดอื นของพนักงาน โดยจะแสดงข้อมูลเฉพาะพนักงานทม่ี ี เงนิ เดอื น 6000 ถึง 15000 SELECT First_name, Salary First_name Salary สมชาย 15000 FROM Employees WHERE Salary between 6000 AND 15000; สมหญิง 6000
การใช้ Not Between…AND…. การใช้ Not ร่วมกบั Between….AND… เป็ นการระบุเงอื่ นไขว่า ข้อมูลต้องไม่อย่ใู นช่วงทกี่ าหนด Emp_ID First_name Last_name Address Salary Employees 001 สมชาย ชาตรี เชียงใหม่ 15000 002 สมหญิง งามแท้ อุตรดิตถ์ 6000 003 สมใจ สุขสม แพร่ 5000 ตวั อย่าง แสดงช่ือ และเงนิ เดอื นของพนักงาน โดยจะแสดงข้อมูลเฉพาะพนักงานทม่ี ี เงนิ เดอื นไม่อยู่ในช่วง 6000 ถงึ 15000 SELECT First_name, Salary First_name Salary สมใจ 5000 FROM Employees WHERE Salary Not between 6000 AND 15000;
การใช้ Like Like <ใช้ในการเปรียบเทยี บคาในรูปแบบ String เพอื่ หาคาที่ต้องการ โดยข้อความหรือคาทต่ี ้องการค้นหา จะทราบค่าหรือระบุเพยี งบางส่วน เท่าน้ัน> รูปแบบ SELECT ชื่อคอลมั น์ทต่ี ้องการดูข้อมูลที่ 1, ชื่อคอลมั น์ที่ 2,…,ชื่อคอลมั น์ที่ n FROM ชื่อตาราง WHERE ชื่อคอลมั น์ Like pattern ;
การใช้ Like SELECT ชื่อคอลมั น์ทตี่ ้องการดูข้อมูลท่ี 1, ช่ือคอลมั น์ที่ 2,…,ชื่อคอลมั น์ท่ี n FROM ชื่อตาราง WHERE ชื่อคอลมั น์ Like pattern ; คอื ส่ิงทตี่ ้องต้องการค้นหา โดย Pattern มรี ูปแบบดงั นี้ % หมายถึง ตัวอกั ษรใด ๆ จานวนไม่จากดั ตวั อกั ษร _ หมายถึง ตวั อกั ษรใด ๆ จานวน 1 ตัวอกั ษร
การใช้ Like ตวั อย่าง รูปแบบ ตัวอย่าง คาอธิบาย ผลลพั ธ์ Sandnes , Louis '%value' '%s' ตวั อกั ษรดา้ นหนา้ เป็นอะไรกไ็ ด้ ตวั สุดตอ้ งเป็น s Nerissa Baer, Louisa 'value%' 'N%' ขอ้ ความน้นั ตอ้ งข้ึนตน้ ดว้ ย N Nayer, Baer '%value%' '%a%' ขอ้ ความตอ้ งมี a ประกอบอยู่ ในขอ้ ความ Baida,Nayer '%value%value%' '%a%e%' ขอ้ ความตอ้ งมี a และ e ประกอบอยใู่ นขอ้ ความ Rajs, Hall แต่ลาดบั ของ a ตอ้ งมาก่อนตวั อกั ษร e '_ value%' '_ a%' ในขอ้ ความ ตวั อกั ษรตวั แรกเป็นอะไรกไ็ ด้ ‘%value_ _ ' '%a_ _' ขอใหต้ วั อกั ษรตวั ท่ี 2 เป็น a ในขอ้ ความ ตวั อกั ษรสองตวั หลงั จะเป็นอะไรกไ็ ด้ แต่ตวั ที่สาม (นบั จากดา้ นหลงั ) ตอ้ งเป็น a
การใช้ Not Like SELECT ชื่อคอลมั น์ทตี่ ้องการดูข้อมูลที่ 1, ชื่อคอลมั น์ที่ 2,…,ชื่อคอลมั น์ท่ี n FROM ชื่อตาราง WHERE ชื่อคอลมั น์ Not Like pattern ; การใช้ Not Like คอื การกาหนดเงอ่ื นว่า ข้อความทีเ่ ราต้องการค้นหาต้องไม่ใช่ทเี่ ราระบุ ลงไปใน Pattern เช่น SELECT last_name FROM Employees WHERE last_name Not Like '%a%'; ผลลพั ธ์ทไ่ี ด้คอื ภาย last_name ทแ่ี สดงผลจะไม่มีตวั อกั ษร a ปรากฏอยู่ใน last_name
การใช้ IN IN <เป็นคาสงั่ ที่ใชส้ าหรับการระบุเงื่อนไขการเลือกขอ้ มูลในตาราง (Table) โดย เลือกเฉพาะค่าท่ีกาหนด> รูปแบบ SELECT ช่ือคอลมั น์ทต่ี ้องการดูข้อมลู ท่ี 1, ชื่อคอลมั น์ที่ 2,…,ชื่อคอลมั น์ที่ n FROM ช่ือตาราง WHERE ช่ือคอลมั น์ IN (value1,value2,...)
การใช้ IN Emp_ID First_name Last_name Address Salary 001 สมชาย ชาตรี เชียงใหม่ 15000 Employees 002 สมหญิง งามแท้ อุตรดิตถ์ 6000 003 สมใจ สุขสม แพร่ 5000 004 สมหวงั ทุกเรื่อง พะเยา 7800 ตวั อย่าง แสดงรหัส และชื่อของพนักงาน โดยจะแสดงข้อมูลเฉพาะพนักงานทม่ี รี หัส 001 ,002,004 Emp_ID First_name SELECT Emp_ID, First_name 001 สมชาย FROM Employees 002 สมหญิง 004 สมหวงั WHERE Emp_ID IN ('001', '002','C004')
การใช้ Not IN Emp_ID First_name Last_name Address Salary 001 สมชาย ชาตรี เชียงใหม่ 15000 Employees 002 สมหญิง งามแท้ อุตรดิตถ์ 6000 003 สมใจ สุขสม แพร่ 5000 004 สมหวงั ทุกเร่ือง พะเยา 7800 ตวั อย่าง แสดงรหัส และช่ือของพนักงาน โดยจะแสดงข้อมูลเฉพาะพนักงานทไ่ี ม่มรี หัส 001 ,002,004 Emp_ID First_name SELECT Emp_ID, First_name 003 สมใจ FROM Employees WHERE Emp_ID Not IN ('001', '002','C004')
การใช้ IS NULL IS NULL <เป็นการระบุเงื่อนไขวา่ คอลมั นท์ ่ีตอ้ งการตอ้ งมีค่าเป็น NULL> รูปแบบ SELECT ชื่อคอลมั น์ทตี่ ้องการดูข้อมูลท่ี 1, ชื่อคอลมั น์ที่ 2,…,ช่ือคอลมั น์ท่ี n FROM ช่ือตาราง WHERE ชื่อคอลมั น์ IS NULL
การใช้ IS NULL Emp_ID First_name Last_name Address Salary 001 สมชาย ชาตรี เชียงใหม่ 15000 Employees 002 สมหญิง งามแท้ อุตรดิตถ์ 6000 003 สมใจ สุขสม 5000 004 สมหวงั ทุกเรื่อง 7800 ตวั อย่าง แสดงช่ือและทอี่ ยู่ของพนักงาน โดยจะแสดงข้อมูลเฉพาะพนักงานทไี่ ม่ได้ระบุ ทอ่ี ยู่ First_name Address SELECT First_name, Address สมใจ สมหวงั FROM Employees WHERE Address IS NULL
การใช้ IS NOT NULL IS NULL <เป็นการระบุเง่ือนไขวา่ คอลมั นท์ ี่ตอ้ งการตอ้ งไม่มีค่าเป็น NULL> รูปแบบ SELECT ช่ือคอลมั น์ทตี่ ้องการดูข้อมูลท่ี 1, ช่ือคอลมั น์ที่ 2,…,ชื่อคอลมั น์ท่ี n FROM ช่ือตาราง WHERE ช่ือคอลมั น์ IS NOT NULL
การใช้ IS NOT NULL Emp_ID First_name Last_name Address Salary 001 สมชาย ชาตรี เชียงใหม่ 15000 Employees 002 สมหญิง งามแท้ อุตรดิตถ์ 6000 003 สมใจ สุขสม 5000 004 สมหวงั ทุกเร่ือง 7800 ตวั อย่าง แสดงช่ือและทอี่ ย่ขู องพนักงาน โดยจะแสดงข้อมูลเฉพาะพนักงานที่ระบุทอ่ี ยู่ SELECT First_name, Address First_name Address สมชาย เชียงใหม่ FROM Employees สมหญิง อุตรดิตถ์ WHERE Address IS NOT NULL
Search
Read the Text Version
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123