📜  Python MySQL – Where 子句(1)

📅  最后修改于: 2023-12-03 15:18:56.685000             🧑  作者: Mango

Python MySQL - Where 子句

在使用Python访问MySQL数据库时,Where 子句用于过滤 SQL 查询结果。它允许我们基于一些条件对查询结果进行过滤。例如,如果我们使用 SELECT 语句从表中检索数据,则可以使用 WHERE 子句来检索满足特定条件的行。

WHERE 子句语法

WHERE 子句通常在 SELECT、UPDATE、DELETE 或 INSERT INTO 语句中使用。 Where 语法如下:

SELECT column1, column2, ...
FROM table_name
WHERE condition;
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
DELETE FROM table_name
WHERE condition;
INSERT INTO table_name (column1, column2, ...)
VALUES (value1, value2, ...);
WHERE 子句示例
SELECT 语句中的 WHERE 子句

以下是一个示例,它从名为 "customers" 的表中检索 "City" 列中所有值为 "London" 的行:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "SELECT * FROM customers WHERE City = 'London'"

mycursor.execute(sql)

myresult = mycursor.fetchall()

for x in myresult:
  print(x)

输出:

(2, 'Amy', 'Taylor', 'amy.taylor@gmail.com', 'Grove Street', 'London')
(7, 'Michael', 'Keaton', 'michael.keaton@gmail.com', 'Canyon Road', 'London')
UPDATE 语句中的 WHERE 子句

以下示例演示如何使用 WHERE 子句在表格中更新具有特定值的行:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "UPDATE customers SET City = 'Paris' WHERE City = 'London'"

mycursor.execute(sql)

mydb.commit()

print(mycursor.rowcount, "记录被修改")

输出:

2 记录被修改
DELETE 语句中的 WHERE 子句

以下示例演示如何使用 WHERE 子句删除具有特定值的行:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "DELETE FROM customers WHERE City = 'Paris'"

mycursor.execute(sql)

mydb.commit()

print(mycursor.rowcount, "记录已删除")

输出:

2 记录已删除
总结

这就是Python MySQL中 WHERE 子句的用法。使用 WHERE 子句可以轻松地执行有条件的数据检索、更新和删除操作。