我有一个线形文件(st.shp),描绘了感兴趣区域的街道。它包含一个agadt2005列,它是每日每日流量值。作为一名新手PostgreSQL,我知道
Select agadt2005 As adt from st;
从Postgres中的st表返回adt的所有值(数字)。此外,
Select agadt2005 As adt from st Where agadt2005 >= 500;
返回大于等于500的所有值(它过滤掉小于500的值)。我需要做的是:要将adt值与500进行比较,如果adt值小于500,那么它应该针对同一列中的每个adt返回空值。例如,在下图中:
小于500的所有adt值都需要用NULL替换。关于如何做到这一点的任何建议将不胜感激?
答案 0 :(得分:0)
您可以使用CASE EXPRESSION:
SELECT CASE WHEN agadt2005 < 500
THEN null
ELSE agadt2005
END as adt
FROM st
根本不需要where子句。