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

อธิบายการใช้ตัวดำเนินการ sql LIKE โดยใช้ MySQL ใน Python หรือไม่


LIKE เป็นโอเปอเรเตอร์ใน MySQL ตัวดำเนินการ LIKE ใช้กับคำสั่ง WHERE เพื่อค้นหารูปแบบเฉพาะในตาราง

สมมติว่าคุณต้องการค้นหาค่าที่ขึ้นต้นด้วย "a" ในตาราง คำสั่ง LIKE จะใช้ในสถานการณ์ดังกล่าว

มีอักขระตัวแทนสองตัวที่ใช้กับส่วนคำสั่ง LIKE

  • % - เครื่องหมายนี้แทนศูนย์ หนึ่งหรือหลายอักขระ

  • _ (ขีดล่าง) - หมายถึงอักขระตัวเดียว

ตัวอย่าง

ชอบ 'a%' - ค้นหาค่าทั้งหมดที่ขึ้นต้นด้วย a.

ชอบ '%a' - ค้นหาค่าทั้งหมดที่ลงท้ายด้วย a.

ชอบ '_a%' - ค้นหาค่าทั้งหมดที่ 'a' อยู่ที่ตำแหน่งที่สอง _ หมายถึงอักขระตัวเดียว อักขระตัวที่สองต้องเป็น 'a' และหลัง a อาจมีอักขระบางตัวอยู่หรือไม่

ไวยากรณ์

SELECT * FROM table_name WHERE column_name LIKE pattern

ขั้นตอนที่เกี่ยวข้องกับการค้นหาข้อมูลตามรูปแบบบางอย่างในตารางโดยใช้ MySQL ใน python

  • นำเข้าตัวเชื่อมต่อ MySQL

  • สร้างการเชื่อมต่อกับตัวเชื่อมต่อโดยใช้ connect()

  • สร้างวัตถุเคอร์เซอร์โดยใช้เมธอด cursor()

  • สร้างแบบสอบถามโดยใช้คำสั่ง mysql ที่เหมาะสม

  • เรียกใช้คำสั่ง SQL โดยใช้เมธอด execute()

  • ปิดการเชื่อมต่อ

สมมติว่าตารางต่อไปนี้ชื่อ “นักเรียน” −

นักศึกษา

<ก่อนหน้า>+----------+-----------+| ชื่อ | เครื่องหมาย |+----------+-----------+| โรหิต | 62 || ราหุล | 75 || อินเดอร์ | 99 || คูชิ | 49 || การัน | 92 |+----------+-----------+

เราต้องการค้นหาชื่อนักเรียนที่ขึ้นต้นด้วย 'K'

ตัวอย่าง

นำเข้า mysql.connectordb=mysql.connector.connect(host="your host", user="your username", password="yourpassword",database="database_name")cursor=db.cursor()query=" เลือกชื่อจากนักเรียน WHERE ชื่อ LIKE 'K%' "cursor.execute(query)names=cursor.fetchall() สำหรับ x ในชื่อ:print(x)db.close()

โค้ดด้านบนดึงชื่อทั้งหมดจากตารางที่ขึ้นต้นด้วย 'K'

ผลลัพธ์

การันคูชิ

ในทำนองเดียวกัน สามารถค้นหาค่าตามรูปแบบต่างๆ โดยใช้สัญลักษณ์แทนด้านบนในลำดับใดก็ได้