mysql中的判断是否有该条数据 如果有返回1 没有返回0

2019-04-15 16:16发布

SELECT IF(pic IS NOT NULL,1,0) AS a FROM items 这样最终返回的是一个表

pic 是items表中的字段 a 是起的别名 items 是表名
如果不需要返回一个表,只需要返回一个数字,那么尝试用下面的方式 exists相当于是全表的判断 这样查询出来后 将会生成我们从新定义的a列数据 那么 如果说exists中的sql语句为真,那么也就是说将a列的每一行数据都为1 那么需要在select后面加入distinct进行去重操作 这样得到的就是一个具体的值, 但是感觉有点浪费时间,目前没有想到怎样去优化
SELECT DISTINCT IF(EXISTS(SELECT * FROM items WHERE NAME='hello'),1,0) AS a FROM items