0
UPDATE company
IF SUBSTRING(company_name, LENGTH(company_name)-3, LENGTH(company_name)) = ' BV'
THEN SET company_name = SUBSTRING(company_name,1,LENGTH(company_name)-3);
END IF;

構文エラーが発生し、どこを見ればよいかわかりません。私がやろうとしているのは、文字列の末尾が「BV」列を更新するように見える場合です。

4

2 に答える 2

3

whereの代わりに句を使用してIFください:

UPDATE company 
SET company_name = SUBSTRING(company_name,1,LENGTH(company_name)-3)
where SUBSTRING(company_name, LENGTH(company_name)-3, LENGTH(company_name)) = ' BV'
于 2012-06-08T13:24:13.790 に答える
0

IF ステートメントにエラーがあります。

IF SUBSTRING(company_name, LENGTH(company_name)-3, LENGTH(company_name)) = ' BV'

する必要があります

IF SUBSTRING(company_name, LENGTH(company_name)-3, 3) = ' BV'

これを行う簡単な方法は、where 句と like 比較を使用することです。

UPDATE company
SET company_name = SUBSTRING(company_name, 1, LENGTH(company_name)-3)
WHERE company_name like '% BV';
于 2012-06-08T13:31:42.020 に答える