注册 登录
编程论坛 MySQL论坛

求大神一句mysql语句搞定

qq565086101 发布于 2020-05-15 16:41, 5766 次点击
mysql语句实现:

检测重复号码,售价低的state状态设置为0。
只保留售价最高的那一条state=1

haoma        price   state

11111111   100     1
22222222   200     1
33333333   300     1
44444444   400     1

11111111   500     1
22222222   600     1
33333333   700     1
44444444   800     1

11111111   900     1
22222222  1000    1
33333333  1100    1
44444444  1200    1
2 回复
#2
davidfang932020-11-17 14:30
UPDATE 表1 别名1
INNER JOIN (SELECT haoma,MAX(price) 别名3 FROM jia GROUP BY haoma ) 别名2
ON 别名1.haoma = 别名2.haoma AND 别名1.price <> 别名2.别名3
SET state = 0;
#3
davidfang932020-11-17 14:31
子查询中的jia是表1
1