Back to Home

DataBase System

Lesson1234579101112131415

Lesson 6 : SQL



Lesson Plan
Section No.
Section 1
Section 2
Section 3
Test
PDF file
PPT File


<<Prev pageCourse MapNext page>>

Print content of this page
Save content of this page

 

การเรียกค้นข้อมูลอย่างง่าย

การเรียกค้นข้อมูลเป็นการสอบถามข้อมูลหรือ “Query” โดยการนำข้อมูลจากฐานข้อมูลมาแสดงออกทางจอภาพ การสอบถามข้อมูลนี้ในภาษา SQL ใช้คำสั่ง SELECT โดยการเรียกค้นข้อมูลจะเป็นไปตามเงื่อนไขที่ผู้ใช้ข้อมูลระบุ

1. การเรียกค้นดูทุกคอลัมน์ในตาราง

คำสั่ง SELECT แบบง่ายมีรูปแบบดังนี้

SELECT *

FROM <table name>;

SELECT * เป็นคำสั่งที่ต้องมีทุกครั้งที่ต้องการเรียกค้นข้อมูลทุกคอลัมน์

FROM เป็นการกำหนดว่าให้เรียกดูข้อมูล ได้จากตารางใดบ้าง

table name ชื่อตารางที่ต้องการเรียกค้นข้อมูล

การเรียกดูข้อมูลสามารถเรียกดูได้มากกว่า 1 คอลัมน์ขึ้นไป โดยถ้ามีมากกว่า 1 คอลัมน์ แต่ละคอลัมน์จะต้องคั่นด้วยเครื่องหมายคอมม่า(,) และถ้าต้องการดูทุกคอลัมน์จะใช้เครื่องหมาย ดอกจัน(*) หลัง SELECT การใช้คำสั่ง SELECT จะใช้ควบคู่กับคำสั่ง FROM เสมอในการเลือกตาราง

การใช้คำสั่ง SELECT ในการเรียกค้นข้อมูลทุกคอลัมน์ในตารางจะใช้เครื่องหมายดอกจัน(*) ตามหลังคำสั่ง SELECT

ตัวอย่าง ตาราง CHECKS

CHECK#

PAYEE

AMOUNT

REMARKS

1.

Malee Benjanee

150

Have sons next time

2.

Reading R.R

24534

Train to Chiangmai

3.

Malee Benjanee

20032

Cellular Phone

4.

Surasit Utities

98

Gas

5.

Jintana $ Mitree

150

Groesries

6.

Cash

25

Wild Night Out

7.

Benjawan Gas

251

Gas

ตัวอย่าง ถ้าต้องการดูทุกคอลัมน์ในตารางก็จะใช้เครื่องหมายดอกจัน(*) แทนรายการคอลัมน์ได้ทั้งหมดได้ดังนี้

select * from checks;

ผลลัพธ์

CHECK#

PAYEE

AMOUNT

REMARKS

1.

Malee Benjanee

150

Have sons next time

2.

Reading R.R

24534

Train to Chiangmai

3.

Malee Benjanee

20032

Cellular Phone

4.

Surasit Utities

98

Gas

5.

Jintana $ Mitree

150

Groesries

6.

Cash

25

Wild Night Out

7.

Benjawan Gas

251

Gas

จากคำสั่ง select * จะเป็นการบอกให้นำข้อมูลทั้งจากตาราง CHECKS มา แสดง (from checks) โดยลำดับตามคอลัมน์ในฐานข้อมูล

2. การเรียกค้นข้อมูลเฉพาะคอลัมน์ใดๆในตารางและการเปลี่ยนลำดับคอลัมน์

การใช้คำสั่ง SELECT ในการเรียกค้นข้อมูลเฉพาะคอลัมน์ที่สนใจทำได้โดยใส่เฉพาะคอลัมน์ที่ต้องการดูในส่วนของคำสั่ง SELECT มีรูปแบบคังนี้

SELECT <column 1, column 2,…>

FROM <table name>;

SELECT เป็นคำสั่งที่ต้องมีทุกครั้งที่ต้องการเรียกค้นข้อมูล

column 1, column 2,…เป็นคอลัมน์ที่ต้องการเรียกค้น

FROM เป็นการกำหนดว่าให้เรียกดูข้อมูลได้จากตารางใดบ้าง

table name ชื่อตารางที่ต้องการเรียกค้นข้อมูล

การเลือกบางคอลัมน์

ตัวอย่าง ถ้าต้องการแสดงข้อมูลบางคอลัมน์จะใช้ เช่น ถ้าต้องการดูคอลัมน์ CHECK# และ AMOUNTใช้คำสั่งดังนี้

SELECT CHECK#, amount from checks;

ผลลัพธ์

CHECK#

AMOUNT

1

150

2

24534

3

20032

4

98

5

150

6

25

7

251

จะเห็นได้ว่าเราสามารถใช้ทั้งอักษรตัวใหญ่และตัวเล็กปนกันในคำสั่ง ซึ่งอักษรตัวใหญ่และตัวเล็กจะไม่มีความแตกต่างกัน

ตัวอย่าง ถ้าต้องแสดงข้อมูลโดยการเปลี่ยนลำดับคอลัมน์ของข้อมูล จะใช้คำสั่งดังนี้

SELECT PAYEE, REMARKS, AMOUNT, CHECK#

FROM checks;

ผลลัพธ์

PAYEE

REMARKS

AMOUNT

CHECK#

Malee Benjanee

Have sons next time

150

1

Reading R.R.

Train to Chiangmai

24534

2

Malee Benjanee

Cellular Phone

20032

3

Surasit Utilities

Gas

98

4

Jintana $ Mitree

Groesries

150

5

Cash

Wild Night Out

25

6

Benjawan Gas

Gas

251

7

3.การเรียกค้นข้อมูลกับคำสั่ง Distinction

จากตาราง CHECKS ถ้าต้องการดูคอลัมน์ AMOUNT เป็นดังนี้

select amount from checks;

ผลลัพธ์

AMOUNT

150

24534

20032

98

150

25

251

จากผลลัพธ์จะเห็นว่าในคอลัมน์ AMOUNT มีข้อมูลที่ซ้ำกันอยู่คือ 150 ถ้าใช้คำสั่ง Distinct ในคำสั่ง SELECT จะทำให้ข้อมูลที่ซ้ำกันนั้นแสดงออกมาเพียงครั้งเดียวดังนี้

select DISTINCT amount from checks;

ผลลัพธ์

AMOUNT

25

251

98

150

20032

24534

จะเห็นว่าจะแสดงข้อมูลออกมาเพียง 6 แถวเท่านั้น

4.การใช้คำสั่ง SELECT กับ WHERE

SELECT <column 1, column 2,…>

FROM <table name>

[WHERE<condition>];

SELECT เป็นคำสั่งที่ต้องมีทุกครั้งที่ต้องการเรียกค้นข้อมูล

column 1, column 2,…คอลัมน์ที่ต้องการเรียกค้น

FROM เป็นการกำหนดว่าให้เรียกดูข้อมูล ได้จากตารางใดบ้าง

table name ชื่อตารางที่ต้องการเรียกค้นข้อมูล

WHERE<condition> ส่วนของคำสั่งที่บอกเงื่อนไขที่จะใช้ในการค้นหาข้อมูล

การใช้ WHERE ในคำสั่ง SELECT จะช่วยให้สามารถสืบค้นข้อมูลได้อย่างเจาะจงมากกว่า เช่น ถ้าใช้เฉพาะ SELECT อย่างเดียวจะได้ข้อมูลทั้งหมด ตัวอย่างเช่น

ตัวอย่าง ตาราง BIKES

NAME

FRAMESIZE

COMPOSITION

MILESRIDDEN

TYPE

TREK 2300

22.5

CARBON FIBER

3500

RACING

BURLEY

22

STEEL

2000

TANDEM

GIANT

19

STEEL

1500

COMMUTER

FUJI

20

STEEL

500

TOURING

SPECIALIZED

16

STEEL

100

MOUNTAIN

CANNONDALE

22.5

ALUMINUM

3000

RACING

ถ้าต้องการจะดูเฉพาะข้อมูลของ “BURLEY” เท่านั้นเราจะต้องใช้ คำสั่ง WHERE ดังนี้

SELECT * FROM BIKES

WHERE NAME = ‘BURLEY’ ;

ผลลัพธ์

NAME

FRAMESIZE

COMPOSITION

MILESRIDDEN

TYPE

BURLEY

22

STEEL

2000

TANDEM

5.โอเปอเรเตอร์

การเรียกค้นข้อมูลอย่างมีเงื่อนไขตามหลักของภาษา SQL จะอยู่หลังคำสั่ง WHERE ซึ่งสามารถเปรียบเทียบตามโอเปอเรเตอร์ ในภาษา SQL อาจแบ่งโอเปอเรเตอร์ ได้เป็น 4 กลุ่ม คือ

1. โอเปอเรเตอร์คณิตศาสตร์(Arithmetic Operators)

2. โอเปอเรเตอร์เปรียบเทียบ(Comparison Operators)

3. โอเปอเรเตอร์อักขระ(Character Operators)

4. โอเปอเรเตอร์ตรรกะ(Logical Operators)

4.1. โอเปอเรเตอร์คณิตศาสตร์(Arithmetic Operators) ได้แก่ operators ที่เป็น plus (+) minus (-), divide (/), multiply (*), and modulo (%)

- โอเปอเรเตอร์ Plus (+) เป็นคำสั่งที่ใช้รวมค่า 2 ค่าเข้าด้วยกัน ดังตัวอย่างต่อไปนี้

จากตาราง PRICE มีรายละเอียดดังนี้

ITEM

WHOLESALE

TOMATOES

34

POTATOES

51

BANANAS

67

TURNIPS

45

CHEESE

89

APPLES

23

ตัวอย่าง ถ้าในคำสั่งในคอลัมน์ WHOLESALE ต้องการ บวก 15 เข้าไป ผลลัพธ์ที่ได้จะแสดงค่าของ WHOLESALE ที่บวก 15 เข้าไปโดยคอลัมน์ แต่จะแสดงเพียงชั่วคราวที่หน้าจอเท่านั้น โดยไม่มีผลต่อข้อมูลของคอลัมน์ WHOLESALE ในตาราง PRICE คอลัมน์ WHOLESALE ในตาราง PRICE จะมีค่าเหมือนเดิม

และจากคอลัมน์ WHOLESALE+15 สามารถให้แสดงผลหน้าจอเป็นชื่อคอลัมน์อื่นได้ โดยถ้าต้องการให้ WHOLESALE +15 และให้แสดงผลเป็นคอลัมน์ RETAIL จะใช้คำสั่งดังนี้

SELECT ITEM, WHOLESALE, (WHOLESALE + 0.15) RETAIL

FROM PRICE;

ผลลัพธ์

ITEM

WHOLESALE

RETAIL

TOMATOES

34

49

POTATOES

51

66

BANANAS

67

82

TURNIPS

45

60

CHEESE

89

104

APPLES

23

38

นอกจากนี้เราสามารถแสดงข้อมูลในคอลัมน์ให้มีชื่อใหม่ตามที่ต้องการได้ เช่น ต้องการให้แสดงข้อมูลในคอลัมน์ ITEM ในตาราง PRICE ให้แสดงออกมาทางหน้าจอเป็นชื่อคอลัมน์ PRODUCE ได้ โดยในคำสั่งยังไม่ใส่เครื่องหมายคอมม่าระหว่าง ITEM และ PRODUCE เพื่อให้ภาษาSQL เข้าใจได้ว่าจะแสดงคอลัมน์ ITEM เป็นคอลัมน์ PRODUCE ดังตัวอย่างต่อไปนี้

SELECT ITEM PRODUCE, WHOLESALE, WHOLESALE * 0.25 RETAIL

FROM PRICE:

ผลลัพธ์

PRODUCE

WHOLESALE

RETAIL

TOMATOES

34

59

POTATOES

51

76

BANNANAS

67

92

TURNIPS

45

70

CHEESE

89

114

APPLES

23

48

- โอเปอร์เรเตอร์ Minus (-) คำสั่ง Minus ใช้ได้เป็น 2 กรณีคือ

1. การเปลี่ยนเครื่องหมายจากบวกเป็นลบและจากลบเป็นบวก

2. การนำข้อมูลของคอลัมน์หนึ่งไปลบออกจากข้อมูลของอีกคอลัมน์หนึ่ง

1.การเปลี่ยนเครื่องหมายจากบวกเป็นลบและจากลบเป็นบวก เช่น รายละเอียดของตาราง HILOW เป็นดังนี้

ตัวอย่างตาราง HILOW

STATE

HIGHTEMP

LOWTEMP

CA

120

-50

FL

110

20

LA

101

15

ND

99

-70

NE

100

-60

ตัวอย่าง ถ้าต้องการให้คอลัมน์ HIGHTEMP และ LOWTEMP มีค่าจากลบเป็นบวก จากบวกเป็นลบ และแสดงหน้าจากคอลัมน์ HIGHTEMP เป็นคอลัมน์ LOWS และคอลัมน์ LOWTEMP เป็นคอลัมน์ HIGHS ใช้คำสั่งดังนี้

SELECT STATE, - HIGHTEMP LOWS, -LOWTEMP HIGHS

FROM HILOW;

ผลลัพธ์

STATE

LOWS

HIGHS

CA

-120

50

FL

-110

-20

LA

-101

-15

ND

-99

70

NE

-100

60

2.การนำข้อมูลของคอลัมน์หนึ่งไปลบออกจากข้อมูลของอีกคอลัมน์หนึ่ง

ตัวอย่าง ถ้าต้องการนำคอลัมน์ HIGHTEMP ลบออกจากคอลัมน์ LOWTEMPแล้วนำผลลัพธ์ที่ได้แสดงในคอลัมน์ DIFFERENCE โดยใช้คำสั่งดังนี้

SELECT STATE,HIGHTEM LOWS,

LOWTEMP HIGHS, (HIGHTEMP - LOWTEMP ) DIFFERENCE

FROM HILOW;

ผลลัพธ์

STATE

LOWS

HIGHS

DIFFERENCE

CA

-50

120

170

FL

20

110

90

LA

15

99

84

ND

-70

101

171

NE

-60

100

160

- โอเปอร์เรเตอร์ Divide (/)เป็นคำสั่งที่ใช้ในการหารข้อมูลดังตัวอย่าง เช่น

ตัวอย่างตาราง PRICE

ITEM

WHOLESALE

TOMATOES

34

POTATOES

51

BANNANAS

67

TURNIPS

45

CHEESE

89

APPLES

23

เมื่อต้องการให้คอลัมน์ WHOLESALE ถูกหารด้วย 2 และแสดงในคอลัมน์ SALEPRICE จะใช้คำสั่งดังนี้

SELECT ITEM, WHOLESALE, (WHOLESALE/2) SALEPRICE

FROM PRICE;

ผลลัพธ์

ITEM

WHOLESALE

SALEPRICE

TOMATOES

34

17

POTATOES

51

25.5

BANNANAS

67

33.5

TURNIPS

45

22.5

CHEESE

89

44.5

APPLES

23

11.5

จากตัวอย่างคอลัมน์ SALEPRICE เป็นผลลัพธ์ที่เกิดจากการนำคอลัมน์ WHOLESALE มาหารด้วย 2

- โอเปอร์เรเตอร์ Multiply (*)เป็นคำสั่งที่ใช้ในคูณค่าของข้อมูลในคอลัมน์

ตัวอย่างตาราง PRICE

ITEM

WHOLESALE

TOMATOES

34

POTATOES

51

BANANAS

67

TURNIPS

45

CHEESE

89

APPLES

23

ตัวอย่าง ถ้าต้องการคูณคอลัมน์ WHOLESALE ด้วย 0.9 ให้ได้ผลลัพธ์เป็นข้อมูลในคอลัมน์ใหม่ที่ชื่อ NEWPRICE จะใช้คำสั่งดังนี้

SELECT ITEM, WHOLESALE, WHOLESALE * 0.9 NEWPRICE

FROM PRICE;

ผลลัพธ์

ITEM

WHOLESALE

NEWPRICE

TOMATOES

34

30.6

POTATOES

51

45.9

BANANAS

67

60.3

TURNIPS

45

40.5

CHEESE

89

80.1

APPLES

23

20.7

- โอเปอเรเตอร์ Modulo (%)เป็นคำสั่งที่ได้ผลลัพธ์เป็นเศษที่ได้จากการหาร

ตัวอย่าง ตาราง REMAINS

NUMERATOR

DENOMENATOR

10

5

8

3

23

9

40

17

1024

16

85

34

ตัวอย่าง ถ้าต้องการสร้างคอลัมน์ REMAINDER ที่มีข้อมูลที่เกิดจากการนำข้อมูลในคอลัมน์ NUMERATOR หารด้วยข้อมูลในคอลัมน์ DENOMINATOR เหลือเศษในการหารเท่าไรแล้วนำค่าที่ได้ไปเก็บไว้ในคอลัมน์ REMAINDER ดังคำสั่งต่อไปนี้

SELECT NUMERATOR,

DENOMINATOR,

NUMERATOR%DENOMINATOR REMAINDER

FROM REMAINS;

ผลลัพธ์

NUMERATOR

DENOMENATOR

REMAINDER

10

5

0

8

3

2

23

9

5

40

17

6

1024

16

0

85

34

17

นอกจากการใช้เครื่องหมาย % ในคำสั่ง Modulo แล้วในภาษา SQL ยังใช้ฟังก์ชัน MOD แทนเครื่องหมาย %ได้ซึ่งจะให้ผลลัพธ์เช่นเดียวกันดังคำสั่งต่อไปนี้

SELECT NUMERATOR,

DENOMINATOR,

MOD(NUMERATOR, DENOMONATOR) REMAINDER

FROM REMAINS;

4.2. โอเปอรเรเตอร์ เปรียบเทียบ (Comparison Operators เป็น Operator ที่จะให้ค่าออกมา 3 ค่า คือ ถูก (TRUE) ผิด (FALSE) ไม่รู้ (Unknow) การไม่รู้หมายถึง ถ้านำข้อมูลที่มีค่าไปเปรียบเทียบกับข้อมูลที่เป็น NULL ตัวเปรียบเทียบจะให้ค่าไม่รู้

ตัวอย่างในตาราง PRICE

ITEM

WHOLESALE

TOMATOES

34

POTATOES

51

BANANAS

67

TURNIPS

45

CHEESE

89

APPLES

23

ORANGES

 

ตัวอย่าง ถ้าต้องการดูว่า ITEM ที่ไม่มีค่า WHOLESALE หรือค่า WHOLESALEเป็นค่าว่างจะใช้คำสั่งดังนี้

SELECT *

FROM PRICE

WHERE WHOLESALE IS NULL;

หรือ

SELECT *

FROM PRICE

WHERE WHOLESALE = NULL;

ผลลัพธ์

ITEM

WHOLESALE

ORANGES

 

4.3 โอเปอเรเตอร์ตัวอักษร(Character Operators) ตัวโอเปอเรเตอร์ LIKE เป็นการค้นหาข้อมูลของคอลัมน์ที่เก็บข้อมูลประเภทตัวอักษรเท่านั้น โดยไม่ทราบค่าข้อมูลทั้งหมดที่จะคันหา หรือรู้เพียงบางตัวอักษรเท่านั้น โอเปอร์เรเตอร์ LIKE จะระบุต่อท้ายชื่อคอลัมน์ที่เป็นเงื่อนไข โดยจะใช้สัญลักษณ์ที่เป็นตัวค้นหาช่วยในการค้นหาข้อมูลที่เรียกว่า วิน การ์ด (WILD Card) สัญลักษณ์ดังกล่าวประกอบด้วย % และ _(เครื่องหมายขีดเส้นใต้) โดยข้อมูลบางส่วนที่ใช้ในการค้นหาพร้อมกับสัญลักษณ์ทั้งสองนี้ จะต้องมีเครื่องหมาย ‘ ‘ กำกับเสมอ ความหมายของสัญลักษณ์ทั้งสองเป็นดังนี้คือ

- สัญลักษณ์ % ใช้แทนจำนวนอักษรได้หลายตัว เช่น พนักงานขายที่ขึ้นต้นด้วยตัว T จะเขียนเงื่อนไขว่า WHERE SALENAME LIKE ‘T%’

- สัญลักษณ์ _ ใช้แทนจำนวนที่ไม่ทราบค่า 1 ตัว เช่น พนักงานขายที่มีชื่อขึ้นต้น S และมีความยาว 7 ตัวอักษร เช่น WHERE SALENAME LIKE ‘S______’

SELECT PAYEE, AMOUNT, REMARKS

FROM CHECKS

WHERE PAYEE LIKE (‘CA%’);

ผลลัพธ์

PAYEE

AMOUNT

REMARKS

Cash

25

Wild Night Out

Cash

60

Trip to Saraburi

Cash

34

Trip to Nonthaburi

กับคำสั่ง LIKE ดังตัวอย่างข้างต้น เปรียบเทียบกับคำสั่ง WITH

SELECT PAYEE, AMOUNT, REMARKS

FROM CHECKS

WHERE PAYEE STARING WITH (‘Ca’);

ผลลัพธ์

PAYEE

AMOUNT

REMARKS

Cash

25

Wild Night Out

Cash

60

Trip to Saraburi

Cash

34

Trip to Nonthaburi

จะเห็นว่าได้ผลลัพธ์เช่นเดียวกัน

ตัวอย่าง ถ้าต้องการให้แสดงคอลัมน์ PAYEE ที่ขึ้นต้นด้วยอักษร Ca หรือ คอลัมน์ REMARKS ที่ขี้นต้นด้วยอักษร G จะใช้คำสั่งดังนี้

SELECT PAYEE, AMOUNT, REMARKS

FROM CHECKS

WHERE PAYEE STARTING WITH(‘Ca’)

OR

REMARKS LIKE ‘G%’;

ผลลัพธ์

PAYEE

AMOUNT

REMARKS

Surasit Utilities

98

Gas

Jintana $ Mitree

150

Groceries

Cash

25

Wild Night Out

Benjawan Gas

251

Gas

Cash

60

Trip to Saraburi

Cash

34

Trip to Nonthaburi

Benjawan Gas

1575

Gas

4.4 โอเปอรเรเตอร์ตรรกะ (Logical Operator) เป็นตัวโอเปอเรเตอร์ที่ใช้ในการเปรียบเทียบ เชื่อมโยงค่า 2 ค่า

ตัวอย่าง ตาราง VACATION

LASTNAME

EMPLOYEENUM

YEARS

LEAVETAKEN

ARLEE

101

2

4

AMPORNI

104

5

23

JINTANA

107

8

45

BOLIVAR

233

4

80

TANACHOTE

210

15

100

TAWATCHI

211

10

78

จากตัวอย่างสมมุติว่าบริษัทให้พนักงานแต่ละคนสามารถหยุดงานได้ โดยพิจารณาจากจำนวนปีที่พนักงานทำงาน พนักงานจะหยุดงานได้ 12 วัน ในอายุการทำงานแต่ละปี ถ้าต้องการหาว่าพนักงานที่มีชื่อตัวหน้าว่า B และยังสามารถหยุดงานได้อีก 50 วัน จะใช้คำสั่ง ดังนี้

SELECT * LASTNAME, YEARS * 12 – LEAVETAKEN REMAINING

FROM VACATION

WHERE LASTNAME LIKE ‘B%’

AND

YEARS * 12 – LEAVETAKEN > 50;

ผลลัพธ์

LASTNAME

REMAINING

JINTANA

51

TANACHOTE

80

จากคำสั่งเราจะใช้คำสั่ง YEARS * 12 – LEAVETAKEN เพื่อหาวันหยุดที่พนักงานยังเหลือ

- ตัวโอเปอเรเตอร์ AND เป็นตัวโอเปอเรเตอร์ ที่ใช้เชื่อมโยงค่า 2 ค่า โดยถ้าค่าหนึ่งเป็น TURE อีกค่าหนึ่งเป็น TURE จะให้ค่า TRUE ออกมา แต่ถ้าค่าหนึ่งเป็น TURE อีกค่าหนึ่งเป็น FALSE จะให้ค่าเป็น FALSE ตัวอย่างเช่น ถ้าต้องการหาว่ามีพนักงานที่ทำงานมากกว่า 5 ปี และเหลือวันหยุดมากกว่า 50% จะใช้คำสั่ง ดังนี้

SELECT LASTNAME WORKAHOLICS

FROM VACATION

WHERE YEARS >=5

AND

((YEARS *12) – LEAVETAKEN)/(YEARS *12) >=0.50;

ผลลัพธ์

WORKAHOLICS

AMPORNI

JINTANA

ตัวโอเปอเรเตอร์ OR ใช้ในการเปรียบเทียบถ้าสิ่งที่นำมาเปรียบเทียบสิ่งใดสิ่งหนึ่งเป็นจริง จะได้ผลลัพธ์ออกมาเป็นจริง

SELECT LASTNAME WORKAHOLICS

FROM VACATION

WHERE YEARS >=5

OR

((YEARS *12) – LEAVETAKEN)/(YEARS *12)>=0.50;

ผลลัพธ์

WORKAHOLICS

ARLEE

AMPORNI

JINTANA

TANACHOTE

TAWATCHI

- ตัวโอเปอเรเตอร์ NOT ในการเปรียบเทียบถ้าสิ่งที่นำมาเปรียบเทียบเป็นจริงจะได้ผลลัพธ์ออกมาเป็นเท็จ แต่ถ้าสิ่งที่นำมาเปรียบเทียบเป็นเท็จผลที่ได้ออกมาจะเป็นจริง ดังตัวอย่าง

SELECT *

FORM VACATION

WHERE LASTNAME NOT LIKE ‘B%’;

ผลลัพธ์

LASTNAME

EMPLOYEENUM

YEARS

LEAVETAKEN

ARLEE

101

2

4

COSTALES

211

10

78

- ตัวโอเปอเรเตอร์ NOT ยังใช้กับ NULL ได้ ถ้านำ not กับ null มารวมกันแล้วจะใช้สำหรับค่าที่ไม่ว่าง

ตัวอย่างตารางPRICE

ITEM

WHOLESALE

TOMATOES

34

POTATOES

51

BANANAS

67

TURNIPS

45

CHEESE

89

APPLES

23

ORANGES

 

ตัวอย่าง ถ้าต้องการให้แสดงเฉพาะข้อมูลที่มีค่าเท่านั้นจะใช้คำสั่ง not nullมาร่วมกับ null เพื่อแสดงเฉพาะข้อมูลที่มีค่าดังคำสั่งต่อไปนี้

SELECT *

FROM PRICE

WHERE wholesale is not null;

ผลลัพธ์

ITEM

WHOLESALE

TOMATOES

34

POTATOES

51

BANANAS

67

TURNIPS

45

CHEESE

89

APPLES

23

- โอเปอร์เรเตอร์ IN และ BETWEEN ตัวโอเปอเรเตอร์ IN เป็นการกำหนดเซ็ตของสิ่งที่ต้องการค้นหา โดยการกำหนดชื่อของสมาชิกเซ็ตลงไปในวงเล็บและแยกจากกันด้วยคอมม่า

SELECT *

FROM FRIENDS

WHERE STATE= ‘Chiangmai’

OR

STATE = ‘Bangkok’

OR

STATE = ‘Puket’;

ผลลัพธ์

LASTNAME

FIRSTNAME

PHONE

ADDRESS

SIRIWAN

ARLEEWAN

555-6666

Bangkok

SURASIT

CHAIYO

555-6767

Puket

WICHAI

AMPORNWAN

555-3116

Chiangmai

SELECT *

FROM FRIENDS

WHERE STATE IN (‘Chiangmai ’, ‘Bangkok ’, ‘Puket ’);

ผลลัพธ์

LASTNAME

FIRSTNAME

PHONE

ADDRESS

SIRIWAN

ARLEEWAN

555-6666

Bangkok

SURASIT

CHAIYO

555-6767

Puket

WICHAI

AMPORNWAN

555-3116

Chiangmai

- ตัวโอเปอเรเตอร์ BETWEEN…AND… เป็นการกำหนดเงื่อนไขของคอลัมน์ระหว่างค่าสองค่า ซึ่งค่าสองที่ออยู่ระหว่างคำสั่ง BETWEEN…AND…นั้นจะมีความหมายว่าเท่ากับหรือมากกว่าและเท่ากับหรือน้อยกว่า

SELECT *

FROM PRICE

WHERE WHOLESALE >25

AND

WHOLESALE < 75;

ผลลัพธ์

ITEM

WHOLESALE

TOMATOES

34

POTATOES

51

BANANAS

67

TURNIPS

45

ถ้าใช้คำสั่ง BETWEEN จะเป็นดังนี้

SELECT *

FROM PRICE

WHERE WHOLESALE BETWEEN 25 AND 75;

ผลลัพธ์

ITEM

WHOLESALE

TOMATOES

34

POTATOES

51

BANANAS

67

TURNIPS

45

 

 

Last Updated: 12/13/2001 11:22:12 AM
© โครงการเครือข่ายสารสนเทศเพื่อพัฒนาการศึกษา ทบวงมหาวิทยาลัย