เปรียบเทียบนิพจน์สตริงกับรูปแบบในนิพจน์ SQL
ไวยากรณ์
นิพจน์Like “รูปแบบ”
ไวยากรณ์ของตัวดำเนินการ Like มีส่วนเหล่านี้:
| ส่วน | คำอธิบาย |
|---|---|
| นิพจน์ | นิพจน์ SQL ที่ใช้ในส่วนคำสั่ง WHERE |
| รูปแบบ | สตริงหรือสัจพจน์สตริงอักขระซึ่งเปรียบเทียบ นิพจน์ |
ข้อสังเกต
คุณสามารถใช้ตัวดําเนินการ Like เพื่อค้นหาค่าในเขตข้อมูลที่ตรงกับรูปแบบที่คุณระบุ สําหรับรูปแบบ คุณสามารถระบุค่าที่สมบูรณ์ (ตัวอย่างเช่น Like “Smith”) หรือคุณสามารถใช้อักขระตัวแทนเพื่อค้นหาช่วงของค่า (ตัวอย่างเช่น Like “Sm*”)
ในนิพจน์ คุณสามารถใช้ตัวดําเนินการ Like เพื่อเปรียบเทียบค่าเขตข้อมูลกับนิพจน์สตริง ตัวอย่างเช่น ถ้าคุณใส่ Like “C*” ในคิวรี SQL คิวรีจะส่งกลับค่าเขตข้อมูลทั้งหมดที่ขึ้นต้นด้วยตัวอักษร C ในคิวรีพารามิเตอร์ คุณสามารถพร้อมท์รูปแบบให้ผู้ใช้ค้นหาได้
ตัวอย่างต่อไปนี้ส่งกลับข้อมูลที่เริ่มด้วยตัวอักษร P ตามด้วยตัวอักษรต่างๆ ระหว่าง A และ F และตัวเลขสามตัว:
Like “P[A-F]###”
ตารางต่อไปนี้แสดงวิธีที่คุณสามารถใช้ Like เพื่อทดสอบนิพจน์สำหรับรูปแบบอื่น
ชนิดการจับคู่ |
รูป แบบ |
ตรง กัน (ส่งกลับจริง) |
ไม่มีค่าที่ตรงกัน (ส่งกลับค่า False) |
|---|---|---|---|
| อักขระหลายอักขระ | a*a | aa, aBa, aBBBa | aBC |
| *ab* | abc, AABB, Xab | aZb, bac | |
| อักขระพิเศษ | a[*]a | a*a | aaa |
| อักขระหลายอักขระ | ab* | abcdefg, abc | cab, aab |
| อักขระตัวเดียว | a?a | aaa, a3a, aBa | aBBBa |
| ตัวเลขหลักเดียว | a#a | a0a, a1a, a2a | aaa, a10a |
| ช่วงอักขระ | [a-z] | f, p, j | 2, & |
| อักขระภายนอกช่วง | [!a-z] | 9, &, % | b, a |
| ไม่ใช่ตัวเลข | [!0-9] | A, a, &, ~ | 0, 1, 9 |
| หลายแบบร่วมกัน | a[!b-m]# | An9, az0, a99 | abc, aj0 |