我正在使用像这样的选择语句
SELECT color, form FROM userTable WHERE type = 42
得到结果
color | form | -------------------- red | circle | blue | rectangle | blue | circle |
但是我想只获得一行 color 中的1行,如果我的结果有一行蓝色,否则为0,而列中为1表单如果我的结果行有一个行表单。因此,从上面的例子看,结果应该是
color | form | ------------------- 1 | 0 |
是否可以使用MySQL命令实现此目的?
以下是我的尝试:
SELECT IF(color='blue', 1, 0) as color, IF(form='line', 1, 0) as form
FROM userTable WHERE type = 27 GROUP BY type
但我认为这不起作用,因为有些行符合IF条件,而其他行则不然。我需要一些声明,如IF THERE EXITS A ROW WITH COLOR = 'blue'
或其他。