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

แบบสอบถาม MySQL เพื่อค้นหารายชื่อเมืองที่ไม่ขึ้นต้นด้วยสระ?


คุณสามารถใช้ DISTINCT กับโอเปอเรเตอร์ RLIKE เพื่อค้นหารายชื่อเมืองที่ไม่ได้ขึ้นต้นด้วยสระได้

ไวยากรณ์มีดังนี้ −

เลือก DISTINCT yourCityColumnName จาก yourTableName WHEREyourCityColumnName NOT RLIKE ‘ ^[AEIOUaeiou].*$';

เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตาราง ที่นี่ เรามีคอลัมน์สำหรับชื่อเมือง

แบบสอบถามเพื่อสร้างตารางมีดังนี้ −

mysql> สร้างตาราง Employee_Information -> ( -> รหัส int ไม่ใช่ NULL AUTO_INCREMENT, -> EmployeeName varchar(20), -> CityName varchar(20), -> PRIMARY KEY(Id) -> ); แบบสอบถามตกลง 0 แถวที่ได้รับผลกระทบ (0.76 วินาที)

แทรกบางระเบียนในตารางโดยใช้คำสั่ง INSERT แบบสอบถามมีดังนี้ −

mysql> แทรกลงใน Employee_Information(EmployeeName,CityName) values('Larry','New York');Query OK, 1 แถวได้รับผลกระทบ (0.12 วินาที)mysql> แทรกลงใน Employee_Information (EmployeeName, CityName) ค่า ('Sam' ,'อินเดียแนโพลิส');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงใน Employee_Information (EmployeeName, CityName) ค่า ('Carol', 'El Paso'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.16 วินาที) mysql> แทรกลงใน Employee_Information(EmployeeName,CityName) values('John','Austin');Query OK, 1 แถวได้รับผลกระทบ (0.07 วินาที)mysql> แทรกลงใน Employee_Information(EmployeeName,CityName) ค่า ('Mike','Denver'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.06 วินาที) mysql> แทรกลงใน Employee_Information (EmployeeName, CityName) ค่า ('David', 'Las Vegas'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงใน Employee_Information (EmployeeName, CityName) ค่า ('James', 'Albuquerque'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงใน Employee_Information (EmployeeName, CityName) ค่า ('Robert', 'Portland'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.28 วินาที) mysql> แทรกลงใน Employee_Information (EmployeeName, CityName) ค่า ('Richard', 'Irvine'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงใน Employee_Information (EmployeeName, CityName) ค่า ('Michael',' Garland');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.13 วินาที)

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

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

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

<ก่อนหน้า>+----+--------------+------------+| รหัส | ชื่อพนักงาน | ชื่อเมือง |+----+--------------+------------+| 1 | แลร์รี่ | นิวยอร์ก || 2 | แซม | อินเดียแนโพลิส || 3 | แครอล | เอลปาโซ || 4 | จอห์น | ออสติน || 5 | ไมค์ | เดนเวอร์ || 6 | เดวิด | ลาสเวกัส || 7 | เจมส์ | อัลบูเคอร์คี || 8 | โรเบิร์ต | พอร์ตแลนด์ || 9 | ริชาร์ด | เออร์ไวน์ || 10 | ไมเคิล | Garland |+----+-------------+--------------+10 แถวในชุด (0.00 วินาที)

ต่อไปนี้คือข้อความค้นหาเพื่อค้นหารายชื่อเมืองที่ไม่ได้ขึ้นต้นด้วยสระ หมายความว่าอักษรตัวแรกของชื่อเมืองต้องไม่ขึ้นต้นด้วย A,E,I,O,U หรือ a,e,i,o,u -

mysql> เลือก DISTINCT CityName จาก Employee_Information -> WHERE CityName ไม่ RLIKE '^[AEIOUaeiou].*$';

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

<ก่อนหน้า>+-----------+| ชื่อเมือง |+-----------+| นิวยอร์ก || เดนเวอร์ || ลาสเวกัส || พอร์ตแลนด์ || Garland |+-----------+5 แถวในชุด (0.00 วินาที)