2014-01-13 105 views
0

我想知道如何在SELECT语句中使用if语句在MySQL做到以下几点:如何在mySQL的SELECT语句中使用If语句和关系运算符?

我有8列的表,我想创建一个view时更改数值。例如:我有一个名为Temperature的列,我想在View创建期间更改低于-50 to NULL的值。

我该如何使用IF声明来做到这一点?或者还有其他方法吗?

回答

2

ANSI标准语法是case

select (case when temperature >= -50 then temperature end) as temperature 

如果没有else条款,则默认为NULL

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 
    ...) ;