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