表type  
id  reid  sortrank  typename  
    27 0 11 顶级分类1 
    42 0 9 顶级栏目5 
    44 0 7 顶级栏目8 
    45 0 12 顶级栏目10 
    46 0 5 我喜爱的栏目 
    47 0 6 我讨厌的栏目 
    48 0 2 顶级栏目13 
    50 0 4 我的世界 
id 为自增主键,查询 sortrank的值小于13且最大的一项记录的id,sortrank的字段值
我的sqlSELECT id, max( sortrank ) 
FROM `dede_arctype` 
WHERE reid =0
AND sortrank <13
LIMIT 0 , 1;查询结果:
id  max(sortrank)  
27 12 想要的记录: 
id  max(sortrank)  
45 12 sql  应该怎么写?

解决方案 »

  1.   

    select max(id),max(sortrank) as time1 from dede_arctype` Where reid =0
    AND sortrank <13
      

  2.   

    SELECT A.* FROM TT A
    INNER JOIN
    (SELECT MAX(sortrank) AS MA FROMM WHERE sortrank<13) B 
    ON A.sortrank=B.MA
      

  3.   

    max(id)  time1  
    50 50 这个是结果 ,不对
      

  4.   

    SELECT A.* FROM TT A
    INNER JOIN
    (SELECT MAX(sortrank) AS MA FROM tt WHERE sortrank<13) B  
    ON A.sortrank=B.MA
      

  5.   

    select id,sortrank from dede_arctype where sortrank in (select sortrank from dede_arctype where reid =0 AND sortrank <13 limit 1)
      

  6.   

    上面错了
    select id,sortrank from dede_arctype where sortrank in 
    (select max(sortrank) from dede_arctype where reid =0 AND sortrank <13)