如何更改MySQL文本字段,以便所有值都以“ - ”开头

时间:2012-01-19 00:57:10

标签: mysql sql

我有一个带有varchar字段“text”的表“foo”,其中某些行以“ - ”为前缀而其他行则不是。更新行的最佳方法是什么,以便“text”字段以“ - ”符号开头?

4 个答案:

答案 0 :(得分:2)

这应该可以解决问题:

UPDATE Foo
SET textField = CASE WHEN LEFT(textField,1) = '-' THEN textField 
                     ELSE CONCAT('-', textField) END

答案 1 :(得分:2)

UPDATE foo SET text = concat('-', text) WHERE substring(text, 1, 1) <> '-'

答案 2 :(得分:0)

UPDATE `foo`
  SET `text` = CONCAT('-', text)
  WHERE SUBSTR(text, 1, 1) <> '-';

答案 3 :(得分:0)

UPDATE foo
SET `text` = CONCAT('-', `text`)
WHERE `text` NOT LIKE '-%'