回答

收藏

Mysql,检查字段值是否更改?

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

Mysql,检查字段值是否更改?如果更改值,则显示不同的值/ v9 m" m8 M7 ~- ~3 {( C
table:一个) b$ |9 |) ^; ]0 r0 V9 L" _  A
   id  size  name/ _0 o! R0 T" n% _
   --------------0 G2 v) d; y8 {. h0 G" {
   1   500   abc
2 m3 w$ D& J% w9 m6 c/ |+ c   2   200   bcd
7 z  c1 l) s8 H& s, J) D   3   400   xyz/ a' {3 V; n% Q9 u3 V/ P  o2 a, M
   4   500   bbb
" H$ U! i4 z8 a& d& K5 A   5   200   aaa
9 ^1 a& O9 O9 W4 W' S( j. @2 e( R2 I. x
  select @s:=@s+1 as index, id, size, name from a,(SELECT @s:= 0) AS s order by size;
, t6 F. H- t) n# f' m4 v' H2 X在此查询数据之类的。
1 I5 p1 K  c8 G+ e6 k7 \  Z& Q- j" S" c   index id  size  name
- h) o: E& _- |: a- s   --------------------$ f; C9 X! u/ o/ U/ F
   1     2   200   bcd+ n$ J! U" j) [; c  E* L
   2     5   200   aaa& \/ ~7 g$ \6 w* X
   3     3   400   xyz
" _2 Z9 p& A0 J   4     1   500   abc
4 x# R/ I' Z' D: l) _7 L" s   5     4   500   bbb: M- J+ k1 u; J! n$ |" r; y
大小更改时,我需要更改索引。我想获取此类数据。喜欢。
* x5 N: l+ z) w' o5 U9 A5 P5 B   index id  size  name3 m9 ?6 S" @+ Q5 z
   --------------------9 o5 `7 z7 q/ I6 E8 s0 I( }
   1     2   200   bcd. c8 d  I9 l) }" [, Q! d/ D. c
   1     5   200   aaa
3 ^% L2 E' ?$ c' Y   2     3   400   xyz" \' j3 `$ j8 @$ B
   3     1   500   abc
# c% w; ~1 t! H  u0 v   3     4   500   bbb
1 n5 ?$ |8 r; o# f* ~! Q+ [               
; X# u, j5 C  n5 Q% ]1 W  T: \解决方案:
7 g8 J2 V9 w6 K                1 X# l" e( Q# I6 w
8 S% w4 M9 R& c  r( W3 m0 Y& u$ b
( _* _5 M9 G9 E' l7 Q
                这应该可以解决问题:8 l& m3 a7 [, q7 U7 e6 C1 g
SELECT
1 i1 ~9 w$ x7 x  @s := @s + (@prev_size != a.size) `index`,8 k3 z4 f, Y5 `% B6 s1 x
  id,( H2 h8 c2 K$ C) i* p& V. @
  @prev_size := a.size size,# O1 \  j8 K4 y$ j9 l
  name
$ |+ g: f0 u4 z6 ?; fFROM a, (SELECT @s := 0, @prev_size := -1) s
* l* V2 C; O* t7 P+ jORDER BY a.size
, N$ L- n) m  b; r( x9 O1 f输出:
; D) Q' e3 `1 m5 M| INDEX | ID | SIZE | NAME |
: `& {2 b1 |! V. P; O9 q+ O|-------|----|------|------|
5 i( Q9 V( o$ Y7 G|     1 |  2 |  200 |  bcd |
8 t9 R- w6 p' o, h4 j3 M|     1 |  5 |  200 |  aaa |
' [& [! {0 V+ |7 c- M4 o: Z|     2 |  3 |  400 |  xyz |
  m# ?$ d& x0 ^; A$ {|     3 |  1 |  500 |  abc |6 S1 ^. E; d1 }" m2 w- h4 L  W$ `
|     3 |  4 |  500 |  bbb |% R# F1 @* [9 y* W; l# o
在这里摆弄。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则