sql - 在 SELECT 语句中引用 COALESCED 值的正确方法?

标签 sql sql-server

如果我在 SELECT 语句中使用“COALESCE”函数。在 JOIN 中引用列值的正确方法是什么?例如..

SELECT 
  ID,
  COALESCE(TableA.Name1, TableA.Name2) 
FROM 
  TableA 
  LEFT JOIN TableB ON TableA.ID = TableB.ID 
  LEFT JOIN TableC ON TableA.ID = TableC.ID
  LEFT JOIN TableD ON <COALESCE VALUE HERE> = TableD.Name

最佳答案

您只需使用 LEFT JOIN TableD ON COALESCE(TableA.Name1, TableA.Name2) = TableD.Name

无法在子句引用的查询中的任何位置引用 SELECT 子句中的表达式。

关于sql - 在 SELECT 语句中引用 COALESCED 值的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5304184/

相关文章:

mysql - 如何在 mysql 中添加总计作为最后一行?

sql-server - ON 子句可变时如何连接两个表

mysql where 子句错误

php - MYSQL - 加入或子查询问题

sql - 如何做出 DISTINCT CONCAT 声明?

MySQL 请求 COUNT 问题

PHP mysql 在两个表中搜索一个值然后将其合并

sql-server - SQL Server 2008 Nvarchar(Max) 连接 - 截断问题

mysql - 如何将两列的组合值复制到同一个表中的一列

sql - 如何将多行字符串拆分为 tsql 中的列