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

ใช้ตัวดำเนินการ LIKE หลายตัวในแบบสอบถาม MySQL เดียว


ในการใช้คำสั่ง LIKE หลายประโยค ไวยากรณ์จะเป็นดังนี้ −

เลือก * จาก yourTableName โดยที่ yourColumnName1 LIKE ('%yourValue1%' หรือ yourColumnName2 LIKE '%yourValue2%') หรือ (yourColumnName3 LIKE '%yourValue3');

ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1534 -> ( -> ClientId int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, -> ClientName varchar(20), -> ClientAge int, -> ClientCountryName varchar(20) -> ); แบบสอบถามตกลง 0 แถว ได้รับผลกระทบ (0.78 วินาที)

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

mysql> แทรกลงในค่า DemoTable1534(ClientName,ClientAge,ClientCountryName)('Chris Brown',29,'AUS');Query OK, 1 แถวได้รับผลกระทบ (0.21 วินาที)mysql> แทรกลงใน DemoTable1534(ClientName,ClientAge,ClientCountryName ) values('David Miller',49,'UK');Query OK, 1 แถวได้รับผลกระทบ (0.14 วินาที)mysql> แทรกลงในค่า DemoTable1534(ClientName,ClientAge,ClientCountryName)('John Doe',43,'US');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.22 วินาที)mysql> แทรกลงในค่า DemoTable1534 (ClientName,ClientAge,ClientCountryName) ('Adam Smith',38,'US');Query OK, 1 แถวได้รับผลกระทบ (0.12 วินาที)mysql> แทรก ลงใน DemoTable1534(ClientName,ClientAge,ClientCountryName) values('Carol Taylor',36,'UK');Query OK, 1 แถวได้รับผลกระทบ (0.16 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

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

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

<ก่อนหน้า>+----------+--------------+-----------+-------- ----+| รหัสลูกค้า | ชื่อลูกค้า | อายุลูกค้า | ClientCountryName |+----------+--------------+-----------+--------- ----+| 1 | คริส บราวน์ | 29 | AUS || 2 | เดวิด มิลเลอร์ | 49 | สหราชอาณาจักร || 3 | จอห์น โด | 43 | สหรัฐอเมริกา || 4 | อดัม สมิธ | 38 | สหรัฐอเมริกา || 5 | แครอล เทย์เลอร์ | 36 | สหราชอาณาจักร |+----------+--------------+-----------+--------- ----------+5 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามสำหรับการใช้ตัวดำเนินการ LIKE หลายรายการในแบบสอบถามเดียว -

mysql> เลือก * จาก DemoTable1534 -> โดยที่ ClientName LIKE ('%Doe%' หรือ ClientAge LIKE '%38%') หรือ (ClientCountryName LIKE '%S');

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

<ก่อนหน้า>+----------+-------------+-----------+--------- ----+| รหัสลูกค้า | ชื่อลูกค้า | อายุลูกค้า | ClientCountryName |+----------+-------------+-----------+---------- ---------+| 1 | คริส บราวน์ | 29 | AUS || 3 | จอห์น โด | 43 | สหรัฐอเมริกา || 4 | อดัม สมิธ | 38 | สหรัฐอเมริกา |+----------+-------------+-----------+---------- ---------+3 แถวในชุด 5 คำเตือน (0.00 วินาที)