อักขระที่ไม่ใช่ ASCII คืออักขระ เช่น สัญลักษณ์ปอนด์ (£) สัญลักษณ์เครื่องหมายการค้า เครื่องหมายบวกลบ เป็นต้น หากต้องการค้นหาอักขระที่ไม่ใช่ ASCII จากตาราง จำเป็นต้องมีขั้นตอนต่อไปนี้ -
ขั้นแรกให้สร้างตารางโดยใช้คำสั่ง create ซึ่งมีดังต่อไปนี้ -
mysql> สร้างตาราง NonASciiDemo-> (-> NonAScii varchar(100)-> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.61 วินาที)
หลังจากนั้นเร็กคอร์ดจะถูกแทรกลงในตารางโดยใช้คำสั่ง insert ซึ่งมีดังต่อไปนี้ -
mysql> INSERT เป็นค่า NonASciiDemo ('-,-'); Query OK, 1 แถวได้รับผลกระทบ (0.18 วินาที)mysql> INSERT เป็นค่า NonASciiDemo (' '); Query OK, 1 แถวได้รับผลกระทบ (0.23 วินาที) mysql> INSERT เป็นค่า NonASciiDemo ('£'); Query OK, 1 แถวได้รับผลกระทบ (0.30 วินาที) mysql> INSERT เป็นค่า NonASciiDemo ('123abcd £'); Query OK, 1 แถวได้รับผลกระทบ (0.24 วินาที)
มีการแทรกระเบียนสี่รายการลงในตารางดังที่แสดงด้านบน โดยที่ระเบียน 2 รายการมีอักขระที่ไม่ใช่ ASCII และระเบียน 2 รายการมีอักขระ ASCII
ในการแสดงระเบียนทั้งหมด ให้ใช้คำสั่ง select ดังนี้ -
เลือก * จาก NonASciiDemo;
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+----------+| NonAScii |+----------+| -,- || || £ || 123abcd£ |+----------+4 แถวในชุด (0.00 วินาที)ไวยากรณ์เพื่อค้นหาอักขระที่ไม่ใช่ ASCII มีดังต่อไปนี้ -
เลือก * จาก yourTableName โดยที่ไม่ได้ HEX(yourColumnName) REGEXP '^([0-7][0-9A-F])*$';
แบบสอบถามเพื่อรับอักขระที่ไม่ใช่ ASCII โดยใช้ไวยากรณ์ข้างต้นจะได้รับดังนี้ -
mysql> เลือก * จาก NonASciiDemo โดยที่ไม่ใช่ HEX(NonAScii) REGEXP '^([0-7][0-9AF])*$';
ต่อไปนี้เป็นผลลัพธ์ของแบบสอบถามข้างต้น -
<ก่อนหน้า>+----------+| NonAScii |+----------+| £ || 123abcd£ |+----------+2 แถวในชุด (0.00 วินาที)