回答

收藏

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

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

什么是最好,最简单的方法?我的查询当前是:, r9 I- k/ N. D& C0 P
  SELECT *
. s9 T1 P% d' j% ~1 s7 m    FROM chat / ^  i# a( I3 }$ k- e7 _
   WHERE (userID = $session AND toID = $friendID)
3 s1 }" V- t. S/ I, O; N9 b/ B      OR (userID = $friendID AND toID = $session)
9 ]7 ^" c6 i4 w' HORDER BY id 1 a5 `, ?9 [* a  k
   LIMIT 10
1 s; E  _; k8 @( x- X: `. ]/ j但是,这显示前10行,而不显示最后10行。
- v6 {) t, S" @$ `# L1 o编辑:我想要最后10行(这是,DESC做到这一点)但是,我希望它们以升序返回。0 K' ~+ z' e) q. f3 H
                  ]& m' p$ `3 d# P
解决方案:3 E( m4 A: g& O  x: b- h
               
8 R4 s$ u$ K( C  d0 S
9 h- L+ V2 L+ {9 T! Z+ y1 c2 Y. V9 ^; @
                颠倒顺序(因此获得最后10个而不是前10个),请使用DESC代替ASC
. [9 e4 o* T# A% w9 p编辑
; C& g4 u/ Z3 a* b3 b% @: _& g( M3 K0 \, f根据您的评论:7 S% V; O; e0 u# @) z: D
SELECT * FROM (; x. |% Y# C5 t/ m. E% p3 u
  SELECT *
) T0 K# k- _0 e# z  FROM chat
% j$ K* [8 o, q7 m  WHERE (userID = $session AND toID = $friendID)
1 Q" N' K: C. j7 m/ d' K    OR (userID = $friendID AND toID = $session)    Q8 w8 t! ]+ \# [
  ORDER BY id DESC
, L4 E6 i- j1 U# e6 I  LIMIT 10
0 P" y( k4 N7 b! O" z8 s) AS `table` ORDER by id ASC
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则