在 Python 中解析 SQLite 查询的 return
Parsing the return of SQLite Query in Python
我在 Flask (Python) 网络应用程序中有一个 SQLite 数据库,这是我用来查看电子邮件是否已注册的代码(在我的 application.py 文件中)。它 returns 一个布尔值(1 或 0),分别表示它是否存在。
db = SQL("sqlite:///test.db")
exists = db.execute("SELECT EXISTS(SELECT 1 FROM people WHERE email in (?))", (email@domain.com))
其中 print(exists)
returns:
[{"EXISTS(SELECT 1 FROM people WHERE email in ('email@domain.com'))": 1}]
简而言之,我得到了所需的结果(使用未注册和注册的电子邮件进行了测试),但我不知道如何访问这个值 1 或 0。
非常感谢任何想法。
尝试为 select 查询的存在部分添加别名
exists = db.execute("SELECT EXISTS(SELECT 1 FROM people WHERE email in (?)) as email_exists", (email@domain.com))
print(exists[0])
那么您应该可以通过 exists[0]['email_exists']
访问该值。这将为您提供 1
或 0
,您接下来可以将其转换为 bool
。
exists = db.execute("SELECT EXISTS(SELECT 1 FROM people WHERE email in (?)) as email_exists", (email@domain.com))
print(bool(exists[0]['email_exists']))
我在 Flask (Python) 网络应用程序中有一个 SQLite 数据库,这是我用来查看电子邮件是否已注册的代码(在我的 application.py 文件中)。它 returns 一个布尔值(1 或 0),分别表示它是否存在。
db = SQL("sqlite:///test.db")
exists = db.execute("SELECT EXISTS(SELECT 1 FROM people WHERE email in (?))", (email@domain.com))
其中 print(exists)
returns:
[{"EXISTS(SELECT 1 FROM people WHERE email in ('email@domain.com'))": 1}]
简而言之,我得到了所需的结果(使用未注册和注册的电子邮件进行了测试),但我不知道如何访问这个值 1 或 0。
非常感谢任何想法。
尝试为 select 查询的存在部分添加别名
exists = db.execute("SELECT EXISTS(SELECT 1 FROM people WHERE email in (?)) as email_exists", (email@domain.com))
print(exists[0])
那么您应该可以通过 exists[0]['email_exists']
访问该值。这将为您提供 1
或 0
,您接下来可以将其转换为 bool
。
exists = db.execute("SELECT EXISTS(SELECT 1 FROM people WHERE email in (?)) as email_exists", (email@domain.com))
print(bool(exists[0]['email_exists']))