mysql - 子查询中的未知列

标签 mysql sql

构建了一个子查询,但在 on 子句中得到了一个未知列。

SELECT *
FROM FINAL_Professional_SP_2013_BCARE_AllCOUNTS
INNER JOIN 
(
SELECT COUNT(FINAL_Professional_SP_2013_BCARE_AllCOUNTS.Phy_PLN_CD), SUM(FINAL_MOP_Professional_SP_2013_BCARE.X12_Cost_High), 
Total_Low-SUM(FINAL_MOP_Professional_SP_2013_BCARE.X12_Cost_Low),
Total_High-SUM(FINAL_MOP_Professional_SP_2013_BCARE.X12_Cost_High),  
AVG_WITHIN_Fac-SUM(FINAL_MOP_Professional_SP_2013_BCARE.X12_Cost_Ave) FINAL_MOP_Professional_SP_2013_BCARE 
FROM FINAL_MOP_Professional_SP_2013_BCARE, FINAL_Professional_SP_2013_BCARE_AllCOUNTS
GROUP BY FINAL_Professional_SP_2013_BCARE_AllCOUNTS.TC_Code, FINAL_Professional_SP_2013_BCARE_AllCOUNTS.Phy_PROV_NO
) a ON
FINAL_Professional_SP_2013_BCARE_AllCOUNTS.Phy_PROV_NO=FINAL_MOP_Professional_SP_2013_BCARE.Phy_PROV_NO
AND FINAL_Professional_SP_2013_BCARE_AllCOUNTS.TC_Code=FINAL_MOP_Professional_SP_2013_BCARE.TC_Code;

出现错误 - 错误代码:1054。“on 子句”中的未知列“FINAL_MOP_Professional_SP_2013_BCARE.Phy_PROV_NO”。我已将其更改为 a.Phy_PROV_NO',但出现相同的错误。

最佳答案

我怀疑这就是你真正想要的:

SELECT allc.TC_Code, allc.Phy_PROV_NO,
       COUNT(allc.Phy_PLN_CD), SUM(bcare.X12_Cost_High), 
       Total_Low-SUM(bcare.X12_Cost_Low),
       Total_High-SUM(bcare.X12_Cost_High),  
       AVG_WITHIN_Fac-SUM(bcare.X12_Cost_Ave) 
FROM FINAL_MOP_Professional_SP_2013_BCARE bcare
JOIN FINAL_Professional_SP_2013_BCARE_AllCOUNTS allc
ON allc.Phy_PROV_NO = bcare.Phy_PROV_NO AND allc.TC_Code = bcare.TC_Code
GROUP BY allc.TC_Code, allc.Phy_PROV_NO

您在子查询外有子查询的连接条件。

关于mysql - 子查询中的未知列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16848053/

相关文章:

sql - 使用 exists select 1 获取其中任何列包含序列的行

mysql - 将表 1 中的一列左连接到表 2 中的两列

mysql - 如何添加外键并引用将在下一行中创建的表

php - 添加多个 MySQL 条目

mysql - 如何根据其他列使用按列分组

sql - Excel VBA SQL 记录集不刷新

mysql - 在cakephp中下载Blob文件

php - 使用 PHP 查询 mysql,放置空字段,并将数据导出为 CSV

php - 如何使用 Ajax 从数据库中删除记录

sql - HiveQL-窗口上多个列的first_value