查询查找字符串并增加计数

时间:2016-07-26 07:55:57

标签: mysql

我有这样的表,

 id     name    count
 1      rrr     2   
 2      www     3   
 3      qqq     4   
 4      aaa     5   
 5      gyhhh   4   
 6      dfgdfg  5   

我想编写查询,在表中找到名称,如果找到,则递增该名称的count列中的计数。计数维护用户使用的时间名称。如果用户使用了名称,那么我检查db中的名称,如果找到,那么我想更新计数增量的行。

2 个答案:

答案 0 :(得分:2)

需要简单的update查询:

如果只想在输入参数与name完全匹配时增加计数,请使用:

UPDATE your_table
SET `count` = `count` + 1
WHERE `name` = ?

如果您想在输入参数是name的子字符串时增加计数,那么您可以使用LIKE

UPDATE your_table
SET `count` = `count` + 1
WHERE `name` LIKE CONCAT('%',?,'%')

注意:用输入参数替换问号(?)。

答案 1 :(得分:0)

试试这个:

select id,name, id + 1 from
(Select id,name from table_name where name in('sa','da','ba','ca')) as a;
希望它有所帮助..