Php 未知列';缺货详情。purchi';在';关于第'条;
我正在使用此查询,但在“on子句”中发现此错误未知列“stockout\u details.purchi”Php 未知列';缺货详情。purchi';在';关于第'条;,php,sql,Php,Sql,我正在使用此查询,但在“on子句”中发现此错误未知列“stockout\u details.purchi” SELECT sale_nag,stockin_details.purchi, COALESCE(stockin_details.sale_nag,0) + stockin_details.sale_nag result FROM stockin_details LEFT JOIN (SELECT SUM(sale_nag) AS snag FRO
SELECT sale_nag,stockin_details.purchi,
COALESCE(stockin_details.sale_nag,0) + stockin_details.sale_nag result
FROM stockin_details LEFT JOIN
(SELECT SUM(sale_nag) AS snag
FROM stockout_details
WHERE purchi='a12'
GROUP BY marka,chalan,room,rack
) stockout_details
ON stockin_details.purchi=stockout_details.purchi
WHERE stockin_details.purchi='a12'
GROUP BY marka,chalan,room,rack
您需要在子查询中包括该列:
SELECT o.sale_nag, i.purchi,
COALESCE(i.sale_nag,0) + i.sale_nag result
FROM stockin_details i LEFT JOIN
(SELECT purchi, SUM(sale_nag) AS snag
FROM stockout_details
WHERE purchi = 'a12'
GROUP BY marka, chalan, room, rack, purchi
) o
ON i.purchi = o.purchi
WHERE i.purchi = 'a12'
GROUP BY i.marka, i.chalan, i.room, i.rack;
注意,我用更易于管理的别名替换了表别名,并限定了所有列名
也就是说,如果查询真的做了任何有用的事情,我会感到惊讶,结果
只使用了一个表中的值
另外,我希望
join
条件使用聚合中的所有列。如果您需要查询方面的进一步帮助,请提出新问题。提供示例数据、所需结果、代码应执行的操作说明以及适当的数据库标记。您需要在select中包含stockout\u details.purchi列,然后在创建子查询时,只有您才能在join子句中使用它,这就是Gordon试图突出显示的内容。(1)我删除了不一致的数据库标记。请仅标记您正在使用的数据库。(2) 您现在了解了错误消息的哪一部分?这似乎很清楚。该列不在子查询中。亲爱的,我知道一切都很清楚,但我为什么要面对这个错误您好,欢迎!表的架构似乎缺少您请求的列。您可以共享所用表的定义吗?该分组无效,应引发异常。通常,除了作为设置函数参数的列之外,您可以按所选的相同列进行分组。此外,为什么不按任何设置函数进行分组?