附加" +"在每个字段的开头没有" +"

时间:2015-07-30 21:15:56

标签: mysql

我需要编写一个追加" +"的查询。在每个p2_number meta_key的前面,它还没有以" +"开头。表的名称是" wp_4_postmeta"。我附上了数据库的图像,这样你就可以看到我在谈论的内容。 http://mmw-file-sharing.s3.amazonaws.com/2015/Screen%20Shot%202015-07-30%20at%204.12.25%20PM.png

3 个答案:

答案 0 :(得分:4)

UPDATE aTable 
SET someField = CONCAT('+', someField) 
WHERE someField NOT LIKE '+%'
;

如果someField也被编入索引,那么查询也应该相当快。

答案 1 :(得分:0)

Update table set column = concat("+", column) where column not like "+%"

应该这样做

答案 2 :(得分:0)

如果第一个字符是substr,您可以使用+进行检查。如果是这样,只返回字段值,否则添加+

select
  case when substr(p2_number, 1, 1) = '+' then
    p2_number
  else
    concat('+' p2_number)
  end as p2_numberplus
from
  wp_4_postmeta

或者你的意思是更新表格数据?在这种情况下,Uueerdo的答案就是你想要的答案。