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

ต่อท้ายไวด์การ์ดใน SELECT ด้วย MySQL หรือไม่


สำหรับการต่อท้าย ให้ใช้แนวคิดของ concat() ไวยากรณ์มีดังนี้ −

เลือก *จาก yourTableName โดยที่ yourColumnName like concat('%',yourValue,'%');

ให้เราสร้างตาราง -

mysql> สร้างตาราง demo48-> (−> id int ไม่ใช่ null auto_increment คีย์หลัก,−> name varchar(20)−> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.70 วินาที)

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

mysql> แทรกลงในค่า demo48(ชื่อ) ('John Smith'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า demo48 (ชื่อ) ('John Doe'); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า demo48 (ชื่อ) ('Adam Smith'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.23 วินาที) mysql> แทรกลงในค่า demo48 (ชื่อ) ('David Miller'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า demo48 (ชื่อ) ('Chris Brown'); ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที)

แสดงบันทึกจากตารางโดยใช้คำสั่ง select -

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

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

<ก่อนหน้า>+----+--------------+| id | ชื่อ |+----+-------------+| 1 | จอห์น สมิธ || 2 | จอห์น โด || 3 | อดัม สมิธ || 4 | เดวิด มิลเลอร์ || 5 | Chris Brown |+----+-------------+5 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อผนวกอักขระตัวแทนในคำสั่ง select -

mysql> เลือก *จาก demo48 โดยที่ชื่อเหมือน concat('%','Smith','%');

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

<ก่อนหน้า>+----+-----------+| id | ชื่อ |+----+-----------+| 1 | จอห์น สมิธ || 3 | Adam Smith |+----+-----------+2 แถวในชุด (0.00 วินาที)