Braum
2015-10-14 02:07
采纳率: 100%
浏览 13.7k

mysql判断查询结果是否存在,存在输出1不存在输出0

 IF EXISTS (SELECT * FROM table WHERE condition) SELECT '1' ELSE SELECT '0';

类似这种语义,mysql中可以实现吗

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • jayxtt999 2015-10-14 02:28
    已采纳

    IFNULL(a,b) 如果a不是NULL IFNULL()返回a,否则它返回b
    或者

    set @c = (SELECT count(*) as c FROM table WHERE condition)
    if(@c>0) then
    set @r = 1;
    else
    set @r = 0;
    end if;
    不知道是不是你想要的效果

    
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • beaconD 2015-10-14 12:25

    select (case when (select count(1) from table WHERE condition) >0 when "select 1" else "select 0" end) from dual;

    评论
    解决 2 无用
    打赏 举报
  • chengxuO_yinwei 2015-10-14 03:30

    case when…… then ……else…… end

    评论
    解决 无用
    打赏 举报
  • 吴小豪 2015-10-14 03:34

    按照需求来看SELECT count(*) as c FROM table WHERE condition 获取到满足条件的个数不就好了,大于0就代表有数据

    评论
    解决 无用
    打赏 举报