我想知道如何在MySQL
的select语句中使用if语句来执行以下操作:
我有一个包含8列的表格,我想在创建view
时更改值。例如:我有一个名为Temperature
的列,我想在-50 to NULL
创建期间更改View
以下的值。
如何使用IF
声明执行此操作?或者还有其他方式吗?
答案 0 :(得分:2)
ANSI标准语法为case
:
select (case when temperature >= -50 then temperature end) as temperature
没有else
子句,默认值为NULL
。
答案 1 :(得分:0)
使用CASE
CREATE
/*[ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
[DEFINER = { user | CURRENT_USER }]
[SQL SECURITY { DEFINER | INVOKER }]*/
VIEW `db`.`test` AS
(SELECT
col,
col2,
(
CASE
WHEN col3 < - 50
THEN NULL
ELSE col3
END
) col3
FROM
...) ;