开发者社区 问答 正文

mysql 如何将下面想要的逻辑体现在sql中?

是这样的情况 ,一个表news。字段为 id,type,item_id 如何用sql写出这样的逻辑
`if(type==15) {
select * form news where item_id > 0;
} else {
select * from news;
}`
在sql中写出这样的逻辑,出来的数据肯定是当type==15的时候,那条记录的item_id大于0,其他type的记录中item_id大小无所谓

展开
收起
落地花开啦 2016-02-25 18:10:36 2016 分享 版权
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    应该可以实现你说的那个逻辑
    `SELECT id,type, item_id
    FROM news
    WHERE CASE WHEN type =15
    THEN if( item_id >0, true, false )
    ELSE 1 =1
    END ;`

    2019-07-17 18:47:49
    赞同 展开评论