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

แบบสอบถาม MySQL เพื่อตรวจสอบว่าแถวใดมีเพียงสองคำ?


สำหรับสิ่งนี้ ให้ใช้ Regular Expression ใน MySQL เช่นเดียวกับไวยากรณ์ด้านล่าง –

เลือก * จาก yourTableName โดยที่ yourColumnName regexp '^[^ ]+[ ]+[^ ]+$';

แบบสอบถามด้านบนจะทำงานเมื่อทั้งสองคำถูกคั่นด้วยช่องว่าง ให้เราสร้าง −

. ก่อน
mysql> สร้างตาราง DemoTable1412 -> ( -> ชื่อ varchar(40) -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.52 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้การแทรก -

mysql> แทรกลงในค่า DemoTable1412 ('John Adam Carol'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.09 วินาที) mysql> แทรกลงในค่า DemoTable1412 ('Mike Sam'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงในค่า DemoTable1412 ('Chris James Robert'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.15 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้ตัวเลือก -

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

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+--------------------+| ชื่อ |+--------------------+| จอห์น อดัม แครอล || ไมค์ แซม || Chris James Robert |+--------------------+3 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อตรวจสอบว่าแถวใดแถวหนึ่งมีคำสองคำคั่นด้วยการเว้นวรรคหรือไม่ -

mysql> เลือก * จาก DemoTable1412 โดยที่ Name regexp '^[^ ]+[ ]+[^ ]+$';

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

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