T-SQL - LIKE Clause
เซิร์ฟเวอร์ MS SQL LIKEอนุประโยคใช้เพื่อเปรียบเทียบค่ากับค่าที่คล้ายกันโดยใช้ตัวดำเนินการสัญลักษณ์แทน มีสัญลักษณ์แทนสองตัวที่ใช้ร่วมกับตัวดำเนินการ LIKE -
- เครื่องหมายเปอร์เซ็นต์ (%)
- ขีดล่าง (_)
เครื่องหมายเปอร์เซ็นต์แสดงถึงศูนย์หนึ่งหรือหลายอักขระ ขีดล่างแสดงถึงตัวเลขหรืออักขระตัวเดียว สามารถใช้สัญลักษณ์ร่วมกันได้
ไวยากรณ์
ต่อไปนี้เป็นไวยากรณ์พื้นฐานของ% และ _
SELECT *\column-list FROM table_name
WHERE column LIKE 'XXXX%'
or
SELECT *\column-list FROM table_name
WHERE column LIKE '%XXXX%'
or
SELECT *\column-list FROM table_name
WHERE column LIKE 'XXXX_'
or
SELECT *\column-list FROM table_name
WHERE column LIKE '_XXXX'
or
SELECT *\column-list FROM table_name
WHERE column LIKE '_XXXX_'
คุณสามารถรวม N จำนวนเงื่อนไขโดยใช้ตัวดำเนินการ AND หรือ OR XXXX อาจเป็นค่าตัวเลขหรือสตริงก็ได้
ตัวอย่าง
ต่อไปนี้เป็นตัวอย่างจำนวนหนึ่งที่แสดงว่าส่วนไหนที่มีส่วนคำสั่ง LIKE ต่างกันโดยมีตัวดำเนินการ '%' และ '_'
ซีเนียร์ No | คำชี้แจงและคำอธิบาย |
---|---|
1 | WHERE SALARY LIKE '200%' ค้นหาค่าใด ๆ ที่เริ่มต้นด้วย 200 |
2 | WHERE SALARY LIKE '%200%' ค้นหาค่าใด ๆ ที่มี 200 ในตำแหน่งใด ๆ |
3 | WHERE SALARY LIKE '_00%' ค้นหาค่าใด ๆ ที่มี 00 ในตำแหน่งที่สองและสาม |
4 | WHERE SALARY LIKE '2_%_%' ค้นหาค่าใด ๆ ที่ขึ้นต้นด้วย 2 และมีความยาวอย่างน้อย 3 อักขระ |
5 | WHERE SALARY LIKE '%2' ค้นหาค่าใด ๆ ที่ลงท้ายด้วย 2 |
6 | WHERE SALARY LIKE '_2%3' ค้นหาค่าใด ๆ ที่มี 2 ในตำแหน่งที่สองและลงท้ายด้วย 3 |
7 | WHERE SALARY LIKE '2___3' ค้นหาค่าใด ๆ ในตัวเลขห้าหลักที่ขึ้นต้นด้วย 2 และลงท้ายด้วย 3 |
พิจารณาตารางลูกค้าที่มีระเบียนต่อไปนี้
ID NAME AGE ADDRESS SALARY
1 Ramesh 32 Ahmedabad 2000.00
2 Khilan 25 Delhi 1500.00
3 kaushik 23 Kota 2000.00
4 Chaitali 25 Mumbai 6500.00
5 Hardik 27 Bhopal 8500.00
6 Komal 22 MP 4500.00
7 Muffy 24 Indore 10000.00
คำสั่งต่อไปนี้เป็นตัวอย่างซึ่งจะแสดงระเบียนทั้งหมดจากตาราง CUSTOMERS โดยที่ SALARY เริ่มต้นด้วย 200
SELECT * FROM CUSTOMERS
WHERE SALARY LIKE '200%';
คำสั่งดังกล่าวจะสร้างผลลัพธ์ต่อไปนี้
ID NAME AGE ADDRESS SALARY
1 Ramesh 32 Ahmedabad 2000.00
3 kaushik 23 Kota 2000.00