- 1 -
SQL Server 2000 : Các toán t
Transaction-SQL cung c p cho b n m t s các toán t trên
nhi u ki u d li u khác nhau nh toán t s h c, toán t n i ư
chu i, toán t so sánh ý nghĩa c a các toán t này hoàn toàn
gi ng nh ý nghĩa c a các toán t trong các ngôn ng l p trình ư
khác. Vi c s d ng các toán t đ c k t h p vào bên trong ượ ế
các m nh đ WHERE, HAVING trong các câu l nh truy v n
ho c bên trong các c u trúc đi u khi n IF, WHILE.
1/- Toán t s h c :
Toán t s h c đ c phép s d ng trong vi c tính toán các phép tính : c ng, tr , nhân, ượ
chia và chia l y ph n d . Các bi u th c, giá tr tính toán ph i có ki u d li u là s khi ư
th c hi n các toán t này. Th t u tiên c a các toán t s h c là : nhân, chia chia ư
l y ph n d tr c sau đó đ n c ng và tr . Tuy nhiên b n nên ch đ nh t ng minh th ư ướ ế ườ
t th c hi n các toán t s h c b ng cách đ a vào các d u ngo c đ n trong m t bi u ư ơ
th c tính toán.
Ví d :
Hai câu l nh bên d i s tr v k t qu nh nhau : ướ ế ư
Tuy nhiên v i câu l nh th hai, b n th y ràng h n b i phép nhân bên trong cùng ơ
c a d u ngo c đ n s th c hi n tr c sau đó là t i phép chia và cu i cùng m i là phép ơ ướ
c ng.
Toán t s h c đ c phép s d ng cho các ki u d li u s nh : int, bigint, smallint, ượ ư
tinyint, numeric, decimal, float, real, money và smallmoney. Tuy nhiên đ i v i phép tính
chia l y ph n d ch đ c s d ng cho các ki u d li u s nguyên nh : int, bigint, ư ượ ư
smallint và tinyint.
- 2 -
Ví d :
Th hi n phép chia l y ph n d c a hai s nguyên 15 và 6. B n s d ng câu l nh nh ư ư
sau :
K t qu tr v là 3.ế
2/- Toán t n i chu i :
Toán t n i chu i đ c phép s d ng trong vi c k t n i các chu i r i r c thành m t ượ ế
chu i liên t c. Các bi u th c, giá tr khi n i chu i ph i ki u d li u chu i ho c
ph i đ c chuy n đ i thành ki u d li u chu i tr c khi th c hi n toán t này. ượ ướ
hi u c a toán t n i các chu i l i v i nhau là d u c ng (+).
Ví d :
Đ n i hai chu i "Hello" và "The World !" l i thành chu i "Hello The World !", b n s
d ng câu l nh sau :
Ví d :
Cho bi t ngày đ t hàng c a đ n đ t hàng s D007 bao nhiêu, b n s d ng câu l nhế ơ
sau :
- 3 -
Trong d trên b t bu c ph i chuy n đ i giá tr d li u c a c t ngày đ t hàng trong
b ng DONDH t ki u d li u ngày sang ki u d li u chu i tr c khi th c hi n toán ướ
t n i chu i.
3/- Toán t so sánh :
Toán t so sánh đ c phép s d ng đ th c hi n các phép so sánh nh : b ng, khác, ượ ư
l n h n, nh h n, cho các bi u th c c n đ c so sánh. Giá tr tr v c a vi c so ơ ơ ượ
sánh s là đúng ho c sai tùy thu c vào bi u th c đi u ki n mà b n đ a ra đ so sánh. ư
Các toán t so sánhth đ c s d ng trên nhi u ki u d li u khác nhau nh : ki u ượ ư
s , ki u chu i ho c ki u ngày. Thông th ng các bi u th c so sánh s đ c l ng vào ườ ượ
các m nh đ WHERE ho c HAVING c a các câu l nh truy v n.
Ví d :
S d ng toán t so sánh b ng đ l c ra các v t t hi n đang trong b ng VATTU ư
v i đ n v tính là "B ", b n s d ng câu l nh sau : ơ
Trong d trên, toán t so sánh b ng đ c th c hi n trên ki u d li u chu i k t ượ ế
h p trong m nh đ WHERE.
Ví d :
S d ng toán t so sánh l n h n đ l c ra các phi u xu t hàng t ng tr giá l n h n ơ ế ơ
3,000,000 vnđ. B n s d ng câu l nh sau :
- 4 -
Trong d trên, toán t so sánh l n h n đ c th c hi n trên ki u d li u s k t ơ ượ ế
h p trong m nh đ HAVING.
4/- Toán t lu n lý :
Toán t lu n lý đ c phép s d ng đ th c hi n vi c k t h p nhi u bi u th c so sánh ượ ế
đ n l thành m t bi u th c so sánh chung. Có ba toán t lu n lý r t quan tr ng th ngơ ườ
dùng : AND, OR NOT. Khi s d ng toán t lu n b n nên thêm vào các d u
ngo c đ n c n thi t đ giúp cho ng i đ c d hi u b i vì nó làm cho câu l nh rõ ràng ơ ế ườ
h n.ơ
Ví d :
Hi n th danh sách các v t t trong b ng VATTU th a đi u ki n nh sau : ư ư
- Đ n v tính là "B " và ph n trăm l n h n 10.ơ ơ
- Ho c đ n v tính là "Cái" và ph n trăm l n h n 20. ơ ơ
B n s d ng câu l nh nh sau : ư
Trong ví d trên, c hai toán t AND và OR đ c s d ng k t h p trong các bi u th c ượ ế
so sánh.