V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Air_Mu
V2EX  ›  问与答

请问这样的SQL怎么写.......

  •  
  •   Air_Mu · 2013-01-15 16:33:05 +08:00 · 2630 次点击
    这是一个创建于 4331 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在按‘id’字段排序的20行中,取出按'weight'字段排序的五行。
    第 1 条附言  ·  2013-01-15 18:42:25 +08:00
    1楼的好像不行
    似乎只有第一个字段相同的时候才按第二个字段排序。
    并且也没有在按ID排序的20行里筛选?
    第 2 条附言  ·  2013-02-07 21:41:27 +08:00
    继续问一下。
    5 条回复    1970-01-01 08:00:00 +08:00
    chairo
        1
    chairo  
       2013-01-15 16:36:26 +08:00   ❤️ 2
    MSSQL版本:SELECT TOP 5 * FROM table ORDER BY id, weight
    MySQL版本:SELECT * FROM table ORDER BY id, weight LIMIT 5
    Air_Mu
        2
    Air_Mu  
    OP
       2013-01-15 18:30:54 +08:00
    @chairo 我试了下发现不对啊。
    aisk
        3
    aisk  
       2013-01-15 18:44:24 +08:00
    select * from xxx where id in (select id from xxx order by id limit 20) order by weight order by weight limit 1 offset 5;
    Air_Mu
        4
    Air_Mu  
    OP
       2013-01-15 19:01:13 +08:00
    我想了下难道需要先查出行数 x 然后where id>(x-20) order by weight?
    napoleonu
        5
    napoleonu  
       2013-02-08 23:08:30 +08:00
    select * from (select * from tb order by id limit 20) t1 order by weight limit 5;
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5622 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 07:43 · PVG 15:43 · LAX 23:43 · JFK 02:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.