开发者社区 问答 正文

求各位指导帮忙写一条sql语句

需求如下:有一张表A,三个字段id,name,isdefault
isdefault有三个值,1,0,NULL,用来表示该记录是否默认(只有一条记录会被设为默认),如果是1表示是默认记录,否则不是默认。
现在我想用一条SQL语句实现以下需求:
查询一条默认记录,如果表中没有设置默认,那么就查第一条记录作为默认记录。

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

    将isdefault加上默认值0
    `SELECT TOP 1 *
    FROM (SELECT id, name, ISNULL(isdefault, 0) AS isdefault FROM A) T
    ORDER BY isdefault DESC, id ASC `

    2019-07-17 18:43:21
    赞同 展开评论
问答分类:
SQL
问答标签:
问答地址: