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

คุณจะทดสอบได้อย่างไรว่ามีบันทึกอยู่ในตาราง MySQL โดยใช้ Python หรือไม่


บางครั้งเราอาจจำเป็นต้องตรวจสอบว่ามีบันทึกเฉพาะอยู่ในตารางหรือไม่

ซึ่งสามารถทำได้โดยใช้คำสั่ง EXISTS คำสั่ง EXISTS คืนค่า จริง หากเคียวรีย่อยต่อไปนี้ส่งคืนเร็กคอร์ดอย่างน้อยหนึ่งรายการ

ไวยากรณ์

SELECT * FROM table_name WHERE EXISTS(sub_query)

แบบสอบถามย่อยหากส่งคืนหนึ่งแถวขึ้นไป EXISTS จะคืนค่าเป็น true

ขั้นตอนในการตรวจสอบว่ามีระเบียนอยู่ในตารางโดยใช้ MySQL ใน python หรือไม่

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

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

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

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

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

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

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

<ก่อนหน้า>+-------------+---------+| sale_price | ภาษี |+-----------+---------+| 1000 | 200 || 500 | 100 || 50 | 50 || 180 | 180 |+-----------+---------+

ตัวอย่าง

นำเข้า mysql.connectordb=mysql.connector.connect(host="your host", user="your username", password="yourpassword",database="database_name")cursor=db.cursor()query=" เลือก sale_price จากการขายที่มีอยู่ (เลือก * จากการขายที่ภาษี>150)"cursor.execute(query)rows=cursor.fetchall()สำหรับแถวในแถว:print(row)db.close()

เคียวรีย่อยในโค้ดด้านบนส่งคืน TRUE เนื่องจากมีเรกคอร์ดที่ภาษีมากกว่า 150 ดังนั้นคำสั่ง EXISTS จะส่งกลับค่า true หากไม่มีบันทึกใดที่มีภาษีมากกว่า 150 แสดงว่า EXISTS ส่งคืนเป็นเท็จ

ผลลัพธ์

1000500700