select top 1 yyyymmdd, hhmmss (select top 20 yyyymmdd, hhmmss from data order by yyyymmdd asc, hhmmss asc) order by yyyymmdd desc, hhmmss desc;哥的目的很简单,就是取出第20条的信息,妈了【个逼】的连这个都解释不了~!
哥发现MSSQL在子查询方面相当弱,稍微嵌套一点子查询,它立马报错,明明那个子查询非常在理!

解决方案 »

  1.   

    哥 你写的太有才了 真的。mssql都觉得你写的太精辟无法用正常的逻辑编译
      

  2.   

    先PF下楼主:
    select top 1 yyyymmdd, hhmmss 
    from(select top 20 yyyymmdd, hhmmss from data order by yyyymmdd asc, hhmmss asc)t
    order by yyyymmdd desc, hhmmss desc
      

  3.   


    select top 1 yyyymmdd, hhmmss  from (select top 20 yyyymmdd, hhmmss from data order by yyyymmdd asc, hhmmss asc)T1 order by yyyymmdd desc, hhmmss desc
      

  4.   

    靠,刚才掉了from了,
    问题所在是没有给自查询起一个别名。
    别说子查询性能低,很多时候,子查询能在一开始就高效的减少关联表的行数。
      

  5.   

    逻辑复杂的SQL,现在一点都写不了了