MYSQL增量';所示为';匹配行所在的行

MYSQL增量';所示为';匹配行所在的行,mysql,sql,Mysql,Sql,我正在寻找表“a”的解决方案,其结构是: ID NAME SHOWN 1 Eddie 0 2 Marie 1 3 Shawn 15 4 Frank 12 5 Danny 7 我想在此表上提交一个SELECT,以便对于每个结果行,“显示的””将增加,例如: SELECT * from 'A' WHERE `ID`>3; 将导致表“A”发生以下更改: ID NAME S

我正在寻找表“a”的解决方案,其结构是:

ID      NAME    SHOWN
1       Eddie    0
2       Marie    1
3       Shawn    15
4       Frank    12
5       Danny    7
我想在此表上提交一个SELECT,以便对于每个结果行,“
显示的”
”将增加,例如:

SELECT * from 'A' WHERE `ID`>3;
将导致表“A”发生以下更改:

ID      NAME    SHOWN
1       Eddie    0
2       Marie    1
3       Shawn    15
4       Frank    13
5       Danny    8
只有Frank和Danny的ID大于3,因此结果选择将产生Frank和Danny,因此,它们各自的“
显示的”
”列增加1

我如何实现这种行为

update A set shown=shown+1 where ID >3)
这是你的电话号码


以下是

您可以使用预期增量更新表格

UPDATE A
SET SHOWN = SHOWN + 1
WHERE ID > 3
请签出此引用:)


然后,您可以使用预期的增量更新表

UPDATE A
SET SHOWN = SHOWN + 1
WHERE ID > 3
请签出此引用:)


可能使用
大小写
表达式:

select  ID
      , NAME
      , CASE WHEN SHOWN > 3 THEN SHOWN + 1 ELSE SHOWN END as SHOWN
FROM A

可能使用
大小写
表达式:

select  ID
      , NAME
      , CASE WHEN SHOWN > 3 THEN SHOWN + 1 ELSE SHOWN END as SHOWN
FROM A

不需要
IN()
子句。只要
WHERE ID>3
就可以了。不需要
IN()
子句。只要
WHERE ID>3
就可以了。