- 1 -
SQL Server 2000 : Các hàm x lý chu i – Ph n 1
ử
ỗ
ầ
Các hàm này th
ườ
ữ ệ
ố
ể
ị ả ề ủ
ữ ệ
ỗ
ể
ỗ ng có tham s vào là ki u d li u chu i ặ và giá tr tr v c a chúng cũng là ki u d li u chu i ho c ng khi l p trình trong
ki u d li u s . Thông th
ườ
ữ
ố
ệ
ể
ậ
ử Transaction-SQL, k t h p s d ng các hàm này trong các x lý
ế ợ ử ụ
chu i ph c t p.
ứ ạ
ỗ
1/- Các hàm UPPER, LOWER :
ả ả ề ớ i c a các hàm UPPER, LOWER có k t qu tr v là m t ộ ướ ủ ế ặ bên trong chu i thành ch in (upper), ho c c chuy n đ i các ký t ỗ ổ ể ự ữ ượ ng (lower). V i cú pháp chung bên d chu i sau khi đã đ ỗ ch th ữ ườ
Cú pháp :
Ví d :ụ
ị ng. B n s ả c đ i thành ch in, d li u c t đ a ch đ ữ ệ ộ ọ ầ ữ ệ c đ i thành ch th ữ ườ ỉ ượ ộ ị ữ ổ ổ Đ hi n th thông tin trong b ng NHACC theo yêu c u : d li u c t h tên nhà cung ể ể ạ ử c p đ ượ ấ d ng l nh sau : ệ ụ
K t qu truy v n tr v : ả ề ế ả ấ
- 2 -
2/- Hàm LEFT, RIGHT, SUBSTRING :
i c a các hàm LEFT, RIGHT, SUBSTRING có k t qu tr c trích ra t chu i ngu n. Chu i con đ ừ ượ ỗ ộ bên trái (left), bên ph i (right) ho c t ỗ ồ ặ ạ ấ ướ ủ c trích ra t ả ả ả ế ắ i v trí b t ạ ị i b t kỳ v trí nào (substring) và l y ra bao ấ ỗ ị V i cú pháp chung bên d ớ v là m t chu i con đ ượ ề đ u t ầ ừ nhiêu ký t .ự
Cú pháp :
Trong đó :
• Chu i ngu n : mu n đ c ch n l a đ trích ra. ồ là chu i ký t ỗ ỗ ự ngu n ch a các ký t ứ ồ ự ố ượ ọ ự ể
: ự là m t s nguyên d ộ ố ươ ng ch đ nh s ký t ị ố ỉ ự bên trong chu i ngu n s đ ỗ ồ ẽ ượ c • S ký t ố trích ra.
là s nguyên d c áp d ng cho hàm ươ ng ch đ nh t ỉ ị ạ ị i v trí b t đ u trích đ ắ ầ ượ ụ • V trí : ố ị SUBSTRING.
là chu i k t qu tr v sau khi th c hi n vi c trích các ký t ả ả ề ỗ ế ự ệ ệ ự đã ch đ nh ỉ ị • Chu i con : ỗ trong các tham s trên. ố
Ví d :ụ
ệ ự ử ụ i đ l y ra các t Th c hi n các câu l nh SELECT có s d ng hàm LEFT, RIGHT, SUBSTRING bên d ướ ể ấ ệ mong mu n. ừ ố
3/- Các hàm LTRIM và RTRIM :
ớ ế c c t b các kho ng tr ng ượ ắ ỏ ướ ủ ả i c a các hàm LTRIM, RTRIM có k t qu tr v là m t ộ ở đ u chu i (ltrim) ho c các kho ng tr ng ặ ả ả ề ả ở ầ ắ ắ ỗ V i cú pháp chung bên d chu i đã đ ỗ cu i chu i (rtrim). ỗ ố
Cú pháp :
- 3 -
Trong đó :
c c t b các kho ng tr ng s đ ỗ ự ẽ ượ ắ ỏ ắ ả ở ầ ặ đ u chu i ho c ỗ • Chu i :ỗ là m t chu i có ký t ộ cu i chu i. ố ỗ
c c t b các kho ng tr ng ớ là chu i k t qu đã đ ỗ ế ả ượ ắ ỏ ả ắ ở ầ ặ đ u chu i ho c ỗ • Chu i m i : ỗ cu i chu i. ố ỗ
Ví d :ụ
ự ử ụ ướ ể ắ ỏ i đ c t b Th c hi n các câu l nh SELECT có s d ng hàm LTRIM, RTRIM bên d ệ các kho ng tr ng ỗ ả ệ đ u và cu i chu i. ở ầ ắ ố
4/- Hàm SPACE :
i có k t qu tr v là m t chu i ch a N ký ả ơ ướ ả ả ề ứ ế ộ ỗ V i cú pháp hàm SPACE đ n gi n bên d ớ t tr ng. ự ắ
Cú pháp :
Trong đó :
ng dùng đ ch đ nh chu i ch a bao nhiêu ký t tr ng. • N : là m t s nguyên d ộ ố ươ ể ỉ ứ ỗ ị ự ắ
Ví d :ụ
ử ụ ướ i dùng đ t o ra 10 ký ể ạ c ch "World". Th c hi n câu l nh SELECT có s d ng hàm SPACE bên d ự ệ tr ng phía tr t ự ắ ệ ướ ữ
K t qu tr v : ả ả ề ế
- 4 -
5/- Hàm REPLICATE :
i có k t qu tr v là m t chu i ch a các ký t ướ ả ả ề ứ ế ỗ ộ ự i N l n. V i cú pháp hàm REPLICATE bên d ớ c l p l đ ượ ặ ạ ầ
Cú pháp :
Trong đó :
• Chu i l p : c sao chép. ỗ ặ là m t chu i có các ký t ộ ỗ s đ ự ẽ ượ
• N : là m t s nguyên d ộ ố ươ ng ch đ nh s l n sao chép. ố ầ ỉ ị
Ví d :ụ
ử ụ ệ ướ i dùng đ sao chép ể Th c hi n câu l nh SELECT có s d ng hàm REPLICATE bên d 5 l n ch "Wo" sau chu i "Hello The World". ệ ữ ự ầ ỗ
K t qu tr v : ả ả ề ế
6/- Hàm LEN :
ủ v là m t s nguyên ộ ố V i cú pháp đ n gi n c a hàm LEN bên d ớ d ươ ả ả ề ng dùng đ ch đ nh chi u dài c a m t chu i ch a bao nhiêu ký t ủ i có k t qu tr ế ướ ỗ ơ ể ỉ ả ị ứ ề ộ . ự
Cú pháp :
- 5 -
Trong đó :
• Chu i :ỗ là chu i c n tính ra có bao nhiêu ký t ỗ ầ . ự
• S nguyên : tr v chi u dài c a chu i. ố ả ề ủ ề ỗ
Ví d :ụ
ệ ử ụ ệ ướ i dùng đ tr v chi u dài ể ả ề ề Th c hi n câu l nh SELECT có s d ng hàm LEN bên d chu i "Trung tam tin hoc". ự ỗ
K t qu tr v : ả ả ề ế
7/- Hàm REVERSE :
ả ơ ướ i có k t qu tr ế ả ả ề ộ ỗ ả v m t chu i đ o V i cú pháp đ n gi n hàm REVERSE bên d ớ c.ượ ng
Cú pháp :
Ví d :ụ
i dùng đ tr v ử ụ ệ ướ ể ả ề c c a chu i "TTTH-DHKHTN". Th c hi n câu l nh SELECT có s d ng hàm REVERSE bên d ệ ự chu i ng ượ ủ ỗ ỗ
K t qu tr v : ả ả ề ế
- 6 -
SQL Server 2000 : Các hàm x lý chu i – Ph n cu i ố ử ầ ỗ
Các hàm này th
ườ
ữ ệ
ố
ể
ị ả ề ủ
ữ ệ
ỗ
ể
ỗ ng có tham s vào là ki u d li u chu i ặ và giá tr tr v c a chúng cũng là ki u d li u chu i ho c ng khi l p trình trong
ki u d li u s . Thông th
ườ
ữ
ố
ệ
ể
ậ
ử Transaction-SQL, k t h p s d ng các hàm này trong các x lý
ế ợ ử ụ
chu i ph c t p.
ứ ạ
ỗ
8/- Hàm STUFF :
ướ ớ ỗ hi n có và thêm vào m t chu i con khác t V i cú pháp hàm STUFF bên d ớ b m t s ký t ỏ ộ ố ự ệ i có k t qu tr v là m t chu i m i sau khi đã h y ủ ộ i v trí v a h y b . ừ ủ ỏ ạ ị ả ả ề ỗ ế ộ
Cú pháp :
Trong đó :
• Chu i ngu n : ồ là m t chu i ch a các ký t ỗ ỗ ứ ộ . ự
là m t s nguyên ch đ nh v trí b t đ u h y b các ký t ị ắ ầ ộ ố ủ ỏ ị ỉ ự ỗ bên trong chu i • V trí : ị ngu n.ồ
ị ự ẽ ị ủ ỗ s b h y b trong chu i ỏ • Chi u dài : ề ngu n đ m t ừ ế ồ là m t s nguyên ch đ nh bao nhiêu ký t ộ ố ỉ bên trái v trí ch đ nh. ị ỉ ị
là m t chu i s đ c thêm vào chu i ngu n t i v trí h y b trên. • Chu i con : ỗ ỗ ẽ ượ ộ ồ ạ ị ủ ỏ ở ỗ
Ví d :ụ
i dùng đ h y b vài ký ệ ể ủ ỏ ự trong m t chu i và thêm vào m t chu i khác t Th c hi n câu l nh SELECT có s d ng hàm STUFF bên d t ự ướ i v trí đã h y b . ủ ỏ ử ụ ộ ệ ỗ ạ ị ỗ ộ
K t qu tr v : ả ả ề ế
- 7 -
9/- Hàm REPLACE :
ả ả ề ướ ớ V i cú pháp hàm REPLACE bên d ớ đ ượ i có k t qu tr v là m t chu i m i sau khi đã ộ c tìm và thay th (n u có) m t chu i nh vào trong m t chu i ngu n. ỗ ỗ ế ế ỗ ồ ế ỏ ộ ộ
Cú pháp :
Trong đó :
• Chu i ngu n : ồ là m t chu i ngu n ch a các ký t ỗ ứ ộ ỗ ồ . ự
• Chu i tìm : ỗ là chu i con c n tìm xem có xu t hi n bên trong chu i ngu n hay không. ệ ầ ấ ỗ ỗ ồ
ế là chu i s đ ỗ ẽ ượ ỗ c thay th khi tìm th y chu i tìm trong chu i ế ấ ỗ • Chu i thay th : ỗ ngu n.ồ
Ví d :ụ
ệ ệ ử ụ ướ ể ỗ ồ i dùng đ tìm và thay "TTTH" trong chu i ngu n "Chào m ng đ n CSC-HCMUNS" ế Computer Science Center Ho Chi Minh University Natural ừ t b i các t "CSC" thành t t t ế ắ ở ừ Th c hi n câu l nh SELECT có s d ng hàm REPLACE bên d ự th t ừ ế ừ (ch này vi ữ Science).
K t qu tr v : ả ả ề ế
10/- Hàm CHAR :
ướ t ộ ự ươ trong máy tính s có t i có k t qu tr ế ị ả ả ề ỗ ả v là m t ký t ự ộ ng ng trong ươ ng ứ ẽ V i cú pháp hàm CHAR bên d ớ b ng mã ASCII, trong b ng mã này quy đ nh m i m t ký t ả ng m t con s . Ph m vi c a các s t ạ ứ 0 đ n 255. ế ố ừ ủ ộ ố
Cú pháp :
- 8 -
Ví d :ụ
ư ể ấ ử ụ ỗ ạ t r ng các ký t ự ế ằ ể ọ ỉ ị S d ng hàm CHAR đ in ra danh sách các nhà cung c p d ng bì th cho các th m i, ư ờ m i khách hàng s g m : h tên, đ a ch . Bi ố 10 và 13 dùng đ xu ng ẽ ồ dòng và v đ u dòng. ề ầ
K t qu tr v : ả ả ề ế
11/- Hàm ASCII :
ướ ế ạ ố ươ ế i có k t qu tr v là m t con s nguyên có ph m vi ộ ủ đã g i vào. Ch c năng c a ự ả ả ả ề ủ ứ ở V i cú pháp hàm ASCII bên d ớ 0 đ n 255, t t ừ hàm này hoàn toàn ng ng ng trong b ng mã ASCII c a ký t i v i hàm CHAR. c l ứ ượ ạ ớ
Cú pháp :
Ví d :ụ
- 9 -
S d ng hàm ASCII đ bi t đ c mã ASCII c a các ký t ử ụ ể ế ượ ủ t ự ừ A đ n P. ế
K t qu tr v : ả ả ề ế