我有一个SQL查询使程序崩溃,我想检查该字段是否包含0或1,所以我用过:
query = cursor.execute('select ID, CASE WHEN status = 1 THEN "GOOD" WHEN status = 0 THEN "BAD" END AS status FROM Person')
错误如下:
无效的列名“ GOOD”无效的列名“ BAD”
答案 0 :(得分:0)
您必须以这种方式更改
select ID, CASE status when 1 then 'GOOD' when 2 then 'BAD' END as STATUS from Person
在SQL中,其工作方式如下;
“案例”列进行审核
“何时”条件开始
'那么'
'结束'
您可以根据需要添加“ else”。
答案 1 :(得分:0)
Python可以对字符串采用单引号或双引号。试试这个:
query = cursor.execute("select ID, CASE WHEN status = 1 THEN 'GOOD' WHEN status = 0 THEN 'BAD' END AS status FROM Person")
您也可以将CASE
更改为此:
CASE status WHEN 1 THEN 'GOOD' WHEN 0 THEN 'BAD' END