如果那么列的条件,SQLite3 Python

时间:2017-08-03 14:43:27

标签: python sqlite

我在数据库data中有一个表data.sqlite

'my_path/data.sqlite'

A B
0 0
1 1
0 1
1 0

我想在此表中添加一个新列,其中如果A = B,则每个值= 1,否则为0。

我可以通过以下方式创建一个新列:

conn = sqlite3.connect('my_path/data.sqlite')
cur = conn.cursor()
cur.execute("ALTER TABLE data ADD COLUMN Agreement")
conn.commit()

A B Agreement
0 0
1 1
0 1
1 0

然后我尝试一个条件语句:其中A和B相等,使用UPDATE SET CASE函数a la Conditional update in SQLite

cur.execute("UPDATE data"
            "SET Agreement = CASE WHEN A == B THEN 1 ELSE 0 END")
cur.commit()

但我一直在接受:

OperationalError: near "Agreement": syntax error

我做错了什么?

0 个答案:

没有答案