lingjueniao 2022-03-19 13:54 采纳率: 88.9%
浏览 14
已结题

下面SQL语句中 coalesce起什么作用呀?

请问 select coalesce(A.id,B.id) AS ID
, coalesce(A.name,B.name) AS name
from classA A full outer join classB B
on A.id=B.id
where A.name Is NULL
OR B.name IS NULL

  • 写回答

1条回答 默认 最新

  • 哈哥撩编程 2023年度博客之星评选TOP 4 2022-03-19 14:03
    关注

    COALESCE是一个函数, (expression_1, expression_2, ...,expression_n)依次参考各参数表达式,遇到非null值即停止并返回该值。如果所有的表达式都是空值,最终将返回一个空值。使用COALESCE在于大部分包含空值的表达式最终将返回空值。

    SQL实例
    select coalesce(success_cnt, 1) from table A
    当success_cnt 为null值的时候,将返回1,否则将返回success_cnt的真实值。

    select coalesce(success_cnt,period,1) from table A
    当success_cnt不为null,那么无论period是否为null,都将返回success_cnt的真实值(因为success_cnt是第一个参数),当success_cnt为null,而period不为null的时候,返回period的真实值。只有当success_cnt和period均为null的时候,将返回1。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月31日
  • 已采纳回答 3月23日
  • 创建了问题 3月19日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度