V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
DinoStray
V2EX  ›  问与答

SQL order by 以后, 怎么做掐头去尾

  •  
  •   DinoStray · Jan 23, 2021 · 1502 views
    This topic created in 1924 days ago, the information mentioned may be changed or developed.

    想把第一个和最后一个元素去掉, 因为只是单纯用 sql 处理数据, 没有上层语言封装调用, 不知道怎么搞了

    Supplement 1  ·  Jan 23, 2021
    是掐头去尾哈, 第一个和最后一个都去掉
    9 replies    2021-01-23 18:45:59 +08:00
    mara1
        1
    mara1  
       Jan 23, 2021
    用变量存一下 搜出来了多少条, 然后 select limit offset 行不?
    DinoStray
        2
    DinoStray  
    OP
       Jan 23, 2021
    @mara1 这样只能去掉最后一条记录吧
    JJstyle
        3
    JJstyle  
       Jan 23, 2021 via iPhone
    select from(select from (select from...)))
    levelworm
        4
    levelworm  
       Jan 23, 2021 via Android
    也可以窗口函数写两列行数,一列正向一列反向,最后去掉两列中的 1
    notejava
        5
    notejava  
       Jan 23, 2021   ❤️ 1
    不考虑效率的话:
    select * from table where id not in ((select min(id) from table), (select max(id) from table))
    Dvel
        6
    Dvel  
       Jan 23, 2021
    ... limit 1 offset ((select count(*) from ...) - 2)
    jazzychai
        7
    jazzychai  
       Jan 23, 2021   ❤️ 1
    @Dvel 反了 大兄弟
    Dvel
        8
    Dvel  
       Jan 23, 2021
    @jazzychai #7 哈哈忘了
    ... limit 1, ((select count(*) from ...) - 2)
    DinoStray
        9
    DinoStray  
    OP
       Jan 23, 2021
    @notejava 爱死你了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   811 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 22:30 · PVG 06:30 · LAX 15:30 · JFK 18:30
    ♥ Do have faith in what you're doing.