我在数据库中建了一张表,表里有两个日期字段,一个是发表日期,一个是最新修改日期,修改日期可以为NULL.我希望select数据库的时候按最新修改日期来排序,但是我希望如果如果一个记录的修改日期是null的情况(就是没被修改过)下,则用它的发表日期来充当修改日期和其他记录进行排序。SQL语句写不出来了,求助~~~~~~~~~

解决方案 »

  1.   

    用CASE WHEN来判断,CASE FIELDNAME WHEN 'A' THEN FIELDNAMEA ELSE FIELDNAMEB END 
      

  2.   

    select * from tb 
    order by ISNULL(修改日期,发表日期)
      

  3.   

    select *
    from tb 
    order by ISNULL(修改日期,发表日期)
      

  4.   

    噢,是判断NULL啊,理解错了,以为是另一个字段代替呢。
      

  5.   

    哦,弄出来了,select * from 表 order by case when 修改日期 is null then 发表日期else 修改日期 end