SQLite 多个 WHERE 条件在 sqlite3 python 中的使用
在本文中,我们将介绍如何在 sqlite3 python 中使用多个 WHERE 条件进行查询。
SQLite 是一种轻量级的嵌入式关系型数据库管理系统,被广泛应用于移动和嵌入式设备以及各种桌面应用程序中。SQL 是一种用于访问和操作数据库的标准语言,支持多个 WHERE 条件可以使我们的查询更加灵活和准确。
阅读更多:SQLite 教程
示例数据库
首先,我们需要准备一个示例数据库,以便进行实验和演示。假设我们有一个名为”students”的表格,包含以下字段:
学生ID | 姓名 | 年龄 | 分数 |
---|---|---|---|
1 | 小明 | 18 | 90 |
2 | 小红 | 20 | 80 |
3 | 小刚 | 19 | 70 |
4 | 小李 | 21 | 85 |
使用 AND 运算符
AND 运算符用于将多个条件联合起来,只有同时满足所有条件的记录才会被返回。在 sqlite3 python 中,我们可以使用字符串的形式来构建查询语句。
import sqlite3
# 连接到数据库
conn = sqlite3.connect('example.db')
# 创建游标
cursor = conn.cursor()
# 构建查询语句
query = "SELECT * FROM students WHERE 年龄 > 18 AND 分数 > 80"
# 执行查询语句并获取结果
cursor.execute(query)
result = cursor.fetchall()
# 输出查询结果
for row in result:
print(row)
# 关闭连接
conn.close()
以上代码中,我们使用了 AND 运算符来找出年龄大于18岁且分数高于80分的学生记录。输出结果如下:
(1, '小明', 18, 90)
使用 OR 运算符
OR 运算符用于将多个条件中的任意一个满足的记录返回。同样地,在 sqlite3 python 中,我们可以使用字符串的形式来构建查询语句。
import sqlite3
# 连接到数据库
conn = sqlite3.connect('example.db')
# 创建游标
cursor = conn.cursor()
# 构建查询语句
query = "SELECT * FROM students WHERE 年龄 < 19 OR 分数 < 75"
# 执行查询语句并获取结果
cursor.execute(query)
result = cursor.fetchall()
# 输出查询结果
for row in result:
print(row)
# 关闭连接
conn.close()
以上代码中,我们使用了 OR 运算符来找出年龄小于19岁或分数低于75分的学生记录。输出结果如下:
(1, '小明', 18, 90)
(3, '小刚', 19, 70)
使用多个 AND 和 OR 运算符
除了使用单个 AND 或 OR 运算符之外,我们还可以结合使用多个 AND 和 OR 运算符来构建更复杂的条件查询。
import sqlite3
# 连接到数据库
conn = sqlite3.connect('example.db')
# 创建游标
cursor = conn.cursor()
# 构建查询语句
query = "SELECT * FROM students WHERE (年龄 < 19 OR 分数 < 75) AND (姓名 LIKE '%小%')"
# 执行查询语句并获取结果
cursor.execute(query)
result = cursor.fetchall()
# 输出查询结果
for row in result:
print(row)
# 关闭连接
conn.close()
以上代码中,我们使用了多个 AND 和 OR 运算符来找出年龄小于19岁或分数低于75分,并且姓名包含”小”字符的学生记录。输出结果如下:
(1, '小明', 18, 90)
(3, '小刚', 19, 70)
总结
在本文中,我们介绍了如何在 sqlite3 python 中使用多个 WHERE 条件进行查询。通过使用 AND 和 OR 运算符,我们可以灵活地构建复杂的条件查询语句,从而获得满足特定条件的记录。这些技巧可以帮助我们更有效地处理和管理数据库中的数据。
希望这篇文章对您在使用 SQLite 进行条件查询时有所帮助!