如果一列或多列为空,则选择“多列合并为一个字段”

发布于 2024-11-01 05:43:26 字数 369 浏览 2 评论 0原文

运行 PostgreSQL 7.4(是的,我们正在升级...)

查询:

SELECT (
     "Address" ||' '|| 
     "Address 2" ||' '|| 
     "City" ||' '|| 
     "State" ||' '|| 
     "Zip"
) AS full_address
FROM database
WHERE condition

除非一个或多个字段为空/空白,否则一切按预期工作。

因此,如果地址 2 为空/空白,则不会返回任何内容。

问题:

如何使用 IF(或 CASE)条件来检查地址 2 是否有值,如果是则添加它,否则跳过

Running PostgreSQL 7.4 (Yeah we are upgrading...)

Query:

SELECT (
     "Address" ||' '|| 
     "Address 2" ||' '|| 
     "City" ||' '|| 
     "State" ||' '|| 
     "Zip"
) AS full_address
FROM database
WHERE condition

All works as expected unless one or more of the fields are null/blank.

So if Address 2 is null/blank nothing is returned.

Question:

How can I use a IF (or CASE) condition to check if Address 2 has a value, if yes add it, else skip

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

〆一缕阳光ご 2024-11-08 05:43:26

使用合并:

select coalesce (someColumn, 'default-if-column-blank')

use coalesce:

select coalesce (someColumn, 'default-if-column-blank')
梨涡 2024-11-08 05:43:26
SELECT (
     "Address" ||' '|| 
     COALESCE("Address 2" ||' ', '') ||
     "City" ||' '|| 
     "State" ||' '|| 
     "Zip"
) AS full_address
FROM database
WHERE condition

http://www.postgresql.org/docs/7.4/static /functions-conditional.html#AEN11443

SELECT (
     "Address" ||' '|| 
     COALESCE("Address 2" ||' ', '') ||
     "City" ||' '|| 
     "State" ||' '|| 
     "Zip"
) AS full_address
FROM database
WHERE condition

http://www.postgresql.org/docs/7.4/static/functions-conditional.html#AEN11443

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文