postgresql中的sql条件判断

有时候,我们想在sql中使用条件判断来查询一个数据的结果。比如,在wsn的数据申请中,用户可以申请一个site上的所有观测变量,也可以申请其中制定的某些观测变量,在进行查询的时候,我们可能只需要返回用户的申请是全部变量还是非全部变量,这是就需要用到条件判断功能了。

在postgresql中可以case when来进行条件判断:
CASE WHEN condition THEN result
[WHEN ...]
[ELSE result]
END;

因此,这个sql语句可以这样来写:

SELECT distinct u.uid,u.site,u.starttime,u.endtime ,s.fld_name,
case when (u.variable=-1) then '-1' else '1' end as variable
from users_pm_down u left join tbl_site_info s on u.site=s.fld_site_id
where starttime is not null and result=-1 and type='down' and uid=100000


已发布

分类

来自

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注