我對你的問題有點困惑執行的東西。 SQL查詢表明您正在使用名爲column
的表?如果我可以忽略它,並假設你有一個名爲test
的表,它有id
(一個int)和name
(一個字符串)列。那麼查詢:
SELECT id FROM test where name = 'something'
將選擇具有name
設置爲字符串'something'
所有行。
在Python,這將是:
cur = con.cursor()
cur.execute("SELECT id FROM test where name = 'something' LIMIT 1")
if cur.fetchone():
do_something()
else:
do_something_else()
這裏的關鍵是使用cursor.fetchone()
將嘗試從遊標檢索行。如果沒有行fetchone()
將返回None
,並且當作爲if
語句中的條件使用時,None
的計算結果爲False
。
你可以創建一個函數來概括:
def has_value(cursor, table, column, value):
query = 'SELECT 1 from {} WHERE {} = ? LIMIT 1'.format(table, column)
return cursor.execute(query, (value,)).fetchone() is not None
if has_value(cur, 'test', 'name', 'Ranga'):
do_something()
else:
do_something_else()
此代碼爲給定的表,列,和值的查詢,並返回True
如果至少有一排用所需的值,否則返回False
。
所以,你想用python來做,或者用SQL做,因爲SQL-QUerry也可以做到。 –
python,因爲我想要執行一些代碼,只有當數據庫爲我的搜索返回true –
所以做一個適當的SQL如: 'SELECT 1 FROM WHERE = ;' 現在只需使用** fetch **,如果這個值爲零就會返回NULL,否則返回1 –