SQLite 是一种嵌入式的关系型数据库管理系统,它是零配置的、支持事务的和支持 SQL 的。SQLite 可以存储在磁盘上,也可以存储在内存中。本文将介绍如何使用 SQLite3 进行查询操作,包括查询表中的数据、过滤数据和排序数据。
在使用 SQLite3 查询数据之前,首先需要连接到数据库。可以使用以下代码连接到 SQLite 数据库:
import sqlite3
# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')
要查询表中的所有数据,可以使用 SELECT * FROM table_name
语句。以下是一个示例代码,演示如何查询表中的所有数据:
import sqlite3
# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 查询表中的所有数据
cursor.execute("SELECT * FROM students")
rows = cursor.fetchall()
# 打印查询结果
for row in rows:
print(row)
# 关闭连接
conn.close()
在这段代码中,我们先连接到示例数据库 example.db
,然后执行 SELECT * FROM students
查询语句,将查询结果保存在 rows
中,最后打印出所有查询结果。
如果想要查询表中满足条件的数据,可以使用 SELECT * FROM table_name WHERE condition
语句。以下是一个示例代码,演示如何查询表中特定条件的数据:
import sqlite3
# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 查询表中满足条件的数据
cursor.execute("SELECT * FROM students WHERE age > 18")
rows = cursor.fetchall()
# 打印查询结果
for row in rows:
print(row)
# 关闭连接
conn.close()
在这段代码中,我们执行 SELECT * FROM students WHERE age > 18
查询语句,查询年龄大于 18 岁的学生信息,并打印出查询结果。
如果只想查询表中的前几条数据,可以使用 SELECT * FROM table_name LIMIT num
语句。以下是一个示例代码,演示如何限制查询结果的数量:
import sqlite3
# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 查询表中的前两条数据
cursor.execute("SELECT * FROM students LIMIT 2")
rows = cursor.fetchall()
# 打印查询结果
for row in rows:
print(row)
# 关闭连接
conn.close()
在这段代码中,我们执行 SELECT * FROM students LIMIT 2
查询语句,查询表中的前两条学生信息,并打印出查询结果。
如果想跳过查询结果的前几条数据,可以使用 SELECT * FROM table_name OFFSET num
语句。以下是一个示例代码,演示如何跳过查询结果的前几条数据:
import sqlite3
# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 查询表中的后两条数据
cursor.execute("SELECT * FROM students LIMIT 2 OFFSET 1")
rows = cursor.fetchall()
# 打印查询结果
for row in rows:
print(row)
# 关闭连接
conn.close()
在这段代码中,我们执行 SELECT * FROM students LIMIT 2 OFFSET 1
查询语句,查询表中的后两条学生信息,并打印出查询结果。
如果想按照某个字段对查询结果排序,可以使用 SELECT * FROM table_name ORDER BY column_name
语句。以下是一个示例代码,演示如何对查询结果进行排序:
import sqlite3
# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 按照年龄对学生信息进行升序排序
cursor.execute("SELECT * FROM students ORDER BY age")
rows = cursor.fetchall()
# 打印查询结果
for row in rows:
print(row)
# 关闭连接
conn.close()
在这段代码中,我们执行 SELECT * FROM students ORDER BY age
查询语句,按照学生的年龄对查询结果进行升序排序,并打印出查询结果。
如果想对查询结果进行降序排序,可以在 ORDER BY
子句后面添加 DESC
。以下是一个示例代码,演示如何对查询结果进行降序排序:
import sqlite3
# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 按照年龄对学生信息进行降序排序
cursor.execute("SELECT * FROM students ORDER BY age DESC")
rows = cursor.fetchall()
# 打印查询结果
for row in rows:
print(row)
# 关闭连接
conn.close()
在这段代码中,我们执行 SELECT * FROM students ORDER BY age DESC
查询语句,按照学生的年龄对查询结果进行降序排序,并打印出查询结果。
通过本文的介绍,我们了解了如何使用 SQLite3 进行查询操作,包括查询表中的数据、过滤数据和排序数据。SQLite 是一个功能强大且易于使用的数据库管理系统,适用于各种规模的应用程序开发。
本文链接:http://so.lmcjl.com/news/6006/