我正在尝试用 sql 编写他的:
SET `Field` = (
If `Field` is empty then "b",
if `Field` is not empty, concat(`Field`,"_b"))
意思是,如果Field
有值 a 它将更改为 a_b,如果它为空,它将更改为 b 是否有一个 sql 合成器可以正确创建此 if..else 语句?
我正在尝试用 sql 编写他的:
SET `Field` = (
If `Field` is empty then "b",
if `Field` is not empty, concat(`Field`,"_b"))
意思是,如果Field
有值 a 它将更改为 a_b,如果它为空,它将更改为 b 是否有一个 sql 合成器可以正确创建此 if..else 语句?
IF(Field = "" or Field IS NULL,'b',concat(Field,'_b'))
您可以使用CASE语句。
例子:
SELECT
CASE
WHEN myField IS NULL THEN 'b'
WHEN myField = '' THEN 'b'
ELSE myField + '_b'
END
FROM myTable
您可以使用 Cases,但您可以像这样缩短它:
set Field = isnull(field, '')
+ case when isnull(field, '') = '' then '' else '_' end
+ 'b'