LIKE เป็นตัวดำเนินการใน MySQL ใช้ร่วมกับคำสั่ง WHERE เพื่อค้นหารูปแบบเฉพาะในตาราง
มีตัวแทน (wildcard) 2 ตัวใช้กับ LIKE:
%- แทนศูนย์ หนึ่ง หรือหลายตัวอักษร_(underscore) - แทนตัวอักษรเพียงตัวเดียว
ตัวอย่าง
LIKE 'a%'- ค้นหาค่าที่ขึ้นต้นด้วย aLIKE '%a'- ค้นหาค่าที่ลงท้ายด้วย aLIKE '_a%'- ค้นหาค่าที่ตัวอักษรที่ 2 เป็น a
ไวยากรณ์
SELECT * FROM table_name WHERE column_name LIKE pattern
ขั้นตอนค้นหาข้อมูลตามรูปแบบในตารางด้วย MySQL ใน Python
นำเข้า MySQL Connector
สร้างการเชื่อมต่อด้วย
connect()สร้างออบเจ็กต์ cursor ด้วย
cursor()สร้างคำสั่ง SQL ที่เหมาะสม
รันคำสั่งด้วย
execute()ปิดการเชื่อมต่อ
สมมติว่ามีตาราง Students:
+----------+-----------+ | name | marks | +----------+-----------+ | Rohit | 62 | | Rahul | 75 | | Inder | 99 | | Khushi | 49 | | Karan | 92 | +----------+-----------+
ต้องการหาชื่อนักเรียนที่ขึ้นต้นด้วย 'K'
ตัวอย่าง
import mysql.connector
db = mysql.connector.connect(
host="your_host",
user="your_username",
password="your_password",
database="database_name"
)
cursor = db.cursor()
query = "SELECT name FROM Students WHERE name LIKE 'K%'"
cursor.execute(query)
names = cursor.fetchall()
for x in names:
print(x)
db.close()โค้ดดึงชื่อทั้งหมดที่ขึ้นต้นด้วย 'K'
ผลลัพธ์
Karan Khushi
สามารถค้นหารูปแบบต่างๆ ได้ด้วย wildcard ทั้งสองตัว