回答

收藏

MYSQL从表中选择,获取表中的最新/最后10行

技术问答 技术问答 418 人阅读 | 0 人回复 | 2023-09-14

什么是最好,最简单的方法?我的查询当前是:/ l3 Y8 U! \5 o. ~; g# u
  SELECT * " _- D7 v; B- E% D
    FROM chat
1 K# J  F2 N4 C- ^* N   WHERE (userID = $session AND toID = $friendID) 4 e8 R4 G. Y, Y* k' F# X# I# i
      OR (userID = $friendID AND toID = $session) ! f0 O+ f# P- n- J; I) W
ORDER BY id
. e! R1 s/ \: e. R* v& O   LIMIT 10
; L5 H' S9 K1 A% Z4 D; M但是,这显示前10行,而不显示最后10行。
9 Q! ~* [( Z5 ~4 G& N3 _9 W编辑:我想要最后10行(这是,DESC做到这一点)但是,我希望它们以升序返回。$ u- `9 b8 ?! J! t7 U' Z
               
2 y. ~+ F1 Z+ c) `9 \  a解决方案:$ q0 O0 [! r% F* x) q
               
/ B$ e# K2 n) _5 c2 V6 _; |$ [& I4 v& b# g$ w& Y1 Q

* ?6 C3 F0 G: Q9 v' c5 O0 }                颠倒顺序(因此获得最后10个而不是前10个),请使用DESC代替ASC3 L" ?4 k* J" m1 a) I; Y1 h/ u
编辑" P1 K" S5 P' D% u3 O; D
根据您的评论:- N9 b  \- d$ R9 [: C1 z: g6 }4 U5 u8 J
SELECT * FROM (
2 `. s: P/ B! M! l% d  SELECT * & B- `' v1 w, B2 W- G# R1 `
  FROM chat ; E2 y, N) M2 E0 R' a8 y  ]
  WHERE (userID = $session AND toID = $friendID) 6 k7 o" ?/ \7 V/ a4 G
    OR (userID = $friendID AND toID = $session)  + ]( b+ j7 G3 @) l4 c9 P* q8 _6 c; i
  ORDER BY id DESC
1 @. [- Z' N1 Q' }' J3 R  LIMIT 10
' U8 V- @# h# l- P9 P) AS `table` ORDER by id ASC
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则