我有一个SQL数据库文件,其中包含许多列,其中两个是'GEO_ID'和'MED_INCOME'。我正在尝试使用关联的“ GEO_ID”仅检索“ MED_INCOME”列数据。我认为这是可行的:
import sqlite3 as db
def getIncome(censusID):
conn = db.connect('census.db')
c = conn.cursor()
c.execute("SELECT 'MED_INCOME' FROM censusDbTable WHERE GEO_ID = %s" % (censusID)
response = c.fetchall()
c.close()
conn.close()
return response
id = 60014001001
incomeValue = getIncome(id)
print("incomeValue: ", incomeValue)
这将导致:
incomeValue: [('MED_INCOME',)]
我以为在尝试仅从一列检索数据之前就已经使用了此方法,但是该方法似乎不起作用。如果我要写的话:
c.execute("SELECT * FROM censusDbTable WHERE GEO_ID = %s" % (censusID)
我得到了整行的数据,所以我知道ID在数据库文件中。
我的语法是否存在某种原因,导致该请求导致一个空集?
答案 0 :(得分:0)
根据@Ernxst的评论,我将请求调整为:
if ( $cat_in_cart )
删除列ID周围的引号,即可解决问题。