检查 table 在 SQLite 中是否为空
Check if table is empty in SQLite
我想知道是否有更好的方法来检查给定数据库的 table 是否为空。
我的版本:
import sqlite3
con = sqlite3.connect('emails.db')
cur = con.cursor()
cur.execute("SELECT count(*) FROM (select 1 from my_table limit 1);")
print(cur.fetchall()[0][0])
con.close()
输出:
0 # If table `my_table' is empty
1 # If table 'my_table' is not empty
你可以使用:
SELECT EXISTS (SELECT 1 FROM my_table);
这将 return 1 行 1 列,如果 table 为空,则为 0
,如果包含任何行,则为 1
。
EXISTS
将在 table 中找到第一行后立即 return 并且不会扫描整个 table.
我想知道是否有更好的方法来检查给定数据库的 table 是否为空。
我的版本:
import sqlite3
con = sqlite3.connect('emails.db')
cur = con.cursor()
cur.execute("SELECT count(*) FROM (select 1 from my_table limit 1);")
print(cur.fetchall()[0][0])
con.close()
输出:
0 # If table `my_table' is empty
1 # If table 'my_table' is not empty
你可以使用:
SELECT EXISTS (SELECT 1 FROM my_table);
这将 return 1 行 1 列,如果 table 为空,则为 0
,如果包含任何行,则为 1
。
EXISTS
将在 table 中找到第一行后立即 return 并且不会扫描整个 table.