我有这样的查询:
SELECT process.id, name, item, file, sort, userprocess.id
FROM `process`
left outer join userprocess ON userprocess.processid = process.id
WHERE userprocess.userid = 11
我想做的是添加一个额外的bool列,如果userprocess.id不为null,则将其设置为true,如果null为userid 11,则将其设置为false ...什么是最佳方法? ?
我在处理中有两行,在用户处理中有一行,但是此查询仅返回1行。我希望它返回2行,其中一行为true,另一行为false。
答案 0 :(得分:1)
您需要将WHERE
条件移至ON
条件,因为它将删除userprocess.id
可能为NULL
的任何行(在这种情况下,{{1} }也将是userprocess.userid
,因此NULL
测试将失败)。然后,您可以根据WHERE
是否为NULL将布尔列添加到输出中:
userprocess.id