Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

คุณบังคับให้ MySQL LIKE คำนึงถึงขนาดตัวพิมพ์อย่างไร


ในการบังคับ MySQL LIKE ให้คำนึงถึงขนาดตัวพิมพ์ด้วยความช่วยเหลือของ LIKE BINARY ไวยากรณ์ต่อไปนี้ -

เลือก yourColumnName เหมือนไบนารี 'anyStringValue' จาก yourTableName;

เพื่อให้เข้าใจแนวคิดข้างต้น ให้เราสร้างตาราง ต่อไปนี้เป็นแบบสอบถามเพื่อสร้างตาราง −

mysql> สร้างตาราง LikeBinaryDemo −> ( −> ชื่อ varchar(200) −> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.58 วินาที)

ตอนนี้คุณสามารถแทรกบันทึกด้วยตัวอักษรขนาดเล็กเพื่อบังคับให้ MySQL LIKE เป็นตัวพิมพ์เล็ก -

mysql> แทรกลงในค่า LikeBinaryDemo ('john'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.12 วินาที)

แสดงระเบียนในตาราง แบบสอบถามมีดังนี้ −

mysql> เลือก *จาก LikeBinaryDemo;

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+------+| ชื่อ |+------+| john |+------+1 แถวในชุด (0.00 วินาที)

กรณีที่ 1 − ใช้ไบนารี

ตอนนี้คุณสามารถใช้ LIKE BINARY เพื่อบังคับให้ MySQL Like เป็นตัวพิมพ์เล็กและตัวพิมพ์ใหญ่

เหมือนไบนารี ในกรณีนี้ เราจะได้ค่า 0 เมื่อเราเปรียบเทียบ 'john' กับ 'JOHN' แบบสอบถามมีดังนี้ −

mysql> เลือกชื่อเหมือนไบนารี 'JOHN' จาก LikeBinaryDemo;

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+-------------------------+| ชื่อเหมือนเลขฐานสอง 'JOHN' |+-------------------------+| 0 |+-----------------------------------+1 แถวในชุด (0.00 วินาที)

กรณีที่ 2 – โดยไม่ต้องใช้ไบนารี

ตอนนี้ให้เราดูว่าจะเกิดอะไรขึ้นเมื่อเราไม่ได้ใช้ไบนารี แบบสอบถามมีดังนี้ −

mysql> เลือกชื่อเช่น 'JOHN' จาก LikeBinaryDemo;

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+-----------------+| ชื่อเหมือน 'จอห์น' |+-----------------+| 1 |+------------------+1 แถวในชุด (0.00 วินาที)

คุณสามารถใช้ LIKE BINARY เพื่อบังคับให้ MySQL คำนึงถึงขนาดตัวพิมพ์