首页 > 解决方案 > 多部分标识符无法通过连接按顺序/分组绑定

问题描述

SELECT *
FROM [dbo].[A] a
     INNER JOIN [dbo].[NM] nm ON a.ID = nm.PropertyId
     INNER JOIN [dbo].[PRO] pro ON pro.ID = nm.PropertyID_FK
WHERE a.Set = 'Pl_ch';
 -- GROUP BY a.NR // The multipart identifier could not be bound
 -- Order by a.NR // The multipart identifier could not be bound

在上面的查询中添加 Order by 或 Group by 会得到错误:

无法为 a.NR 字段绑定多部分标识符。

为什么它不起作用?

标签: sqlsql-server

解决方案


当它说的多部分标识符无法绑定时,这意味着编译器无法找到指定的列。

因此,在这里,您可能没有表 A 中的 NR 列,或者列名中可能有空格。

因此,请确保列正确剥落,并且如果列名中有空格,请使用方括号指定列名。喜欢A.[NR ]而不是A.NR


推荐阅读