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

วิธีเขียน SQL IN Query ด้วย Python Tuple

เพื่อเขียน SQL IN query คุณต้องแน่ใจว่าคุณให้ placeholders ใน query โดยใช้ ? เพื่อให้ query ถูก escape อย่างถูกต้อง ตัวอย่างเช่น:

ตัวอย่าง

my_tuple = ("Hello", "world", "John")
placeholder = '?'
placeholders = ', '.join(placeholder for _ in my_tuple)
query = 'SELECT name FROM students WHERE id IN (%s)' % placeholders
print(query)

# now execute using the cursor
cursor.execute(query, my_tuple)

ผลลัพธ์

'SELECT name FROM students WHERE id IN (?, ?, ?)'

และเมื่อเรียก execute จะแทนที่ placeholder ? ด้วยค่าที่ escaped อย่างถูกต้อง