wuyakenihao
郑州boy
采纳率0%
2009-11-26 10:36

一个关于SQL语句的问题。

  • dao
已采纳

现在有一个 user表 字段有 a,b,c;
其中 c 字段是一个int型的 但是 表里面的数据 中 c 字段有的为空。

现在又这么一个需求。
当c字段为null 的时候,要求用sql语句查出来的结果是 c 字段不会出现空值,当c 是null 的时候 把c 重新赋值成-1;

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答

  • China_wanze China_wanze 12年前

    oracle 中可以用 NVL(name,-1) 尝试
    sql中可以用isnull()函数
    或者用decode(name,‘null’,-1,name)来赋值

    点赞 评论 复制链接分享
  • xxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx 12年前

    mssql: select isnull(c,-1) from user;
    mysql: select ifnull(score,-1) from user;

    点赞 评论 复制链接分享
  • CaiHuajiang CaiHuajiang 12年前

    null和空值查询出来的效果是一样 。
    看来分别查出来,再unit一下吧
    select a,b,? from user where c is null
    unit all
    select a,b,decode(c,'',-1,c) where c is not null

    点赞 评论 复制链接分享