如何在 mySQL 的 SELECT 语句中使用 If 语句和关系运算符? [复制]
Posted
技术标签:
【中文标题】如何在 mySQL 的 SELECT 语句中使用 If 语句和关系运算符? [复制]【英文标题】:How Can I use If statement with relational operator in a SELECT statement in mySQL? [duplicate] 【发布时间】:2014-02-01 15:52:20 【问题描述】:我想知道如何在mysql
的 select 语句中使用 if 语句来执行以下操作:
我有一个包含 8 列的表,我想在创建 view
时更改这些值。例如:我有一个名为Temperature
的列,我想在View
创建期间更改-50 to NULL
以下的值。
我如何使用IF
语句来做到这一点?还是有其他方法?
【问题讨论】:
【参考方案1】:ANSI 标准语法是case
:
select (case when temperature >= -50 then temperature end) as temperature
如果没有else
子句,默认为NULL
。
【讨论】:
【参考方案2】:用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
...) ;
【讨论】:
以上是关于如何在 mySQL 的 SELECT 语句中使用 If 语句和关系运算符? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
如何在MySQL 5.7中使用SELECT ... INTO语句导出数据文件?
如何在MySQL中的INSERT语句中使用SELECT MAX?