比如表里有两个关于时间的字段,type,fbtime,shtime.一个是发布时间,一个是审核时间。
我用一个sql要查询出三种类型的信息,整个sql要按照时间来排序,其中typea和typeb是只有fbtime的。typec是有shtime为标准的。怎么让这个sql按照各自的时间来排序?要求:一个sql,总的按照时间来排序。。
[(typea,typeb==按照==>>fbtime)(typec==按照==>>shtime)]===总的===>>shfbtime

解决方案 »

  1.   

    order by fbtime desc,shtime
      

  2.   

     直接按shfbtime,fbtime一起倒序排序不就可以了么   所有时间都是倒序的  相当于小类也是倒序了
      

  3.   

    好像不是这样啊,如果order by fbtime desc,shtime这样写的话,typec也会先按照fbtime排序,然后才参考shtime。我想要的结果是在一个sql中typea和typeb按照fbtime排序同时在总的结果中,排序会参考typea和typeb的fbtime和typec的shtime
      

  4.   

    楼主说的一片混乱啊,都是一个sql的数据,你怎么区分什么typea,b,c啊的,
    你把数据给出来,想要什么样的结果,
    语文也是数据库老师教的吧?
      

  5.   

    可以用partition来区分,你数据库是语文老师教的
      

  6.   

    看楼主的回帖就知道,你发的帖子也不是一个了,每一个帖子自以为说的很明白似的,其实一塌糊涂
    ,进论坛第一步就是看发帖规范,
    你有什么样的结构,什么样的数据,你列出来,你期望什么样的结构,你也列出来,说个什么劲,以为说的很明白似的,还我数据库是语文老师教的,你说对了,我们语文老师也是资深DBA
      

  7.   


    select type,
           fbtime,
           shtime,
           decode(type, 'typea', fbtime, 'typeb', fbtime, 'typec', shtime, null) sorttime
      from t_tbale
     order by sorttime