值得注意的是。当我移除from部分并在单独的查询中运行它时,代码可以工作。我可以内连接,外连接,左连接或右连接。但是,当我将代码添加回case查询时,它会返回在location中找不到的错误消息。
谢谢你,M
有关代码的章节
FROM `sql-practice-361723.warehouse_orders.Warehouse` AS warehouse
LEFT JOIN
`sql-practice-361723.warehouse_orders.Orders`As Orders
ON
warehouse.warehouse_id = Orders.warehouse_id
->全码
SELECT
Warehouse.warehouse_id,
CONCAT(Warehouse.state, ':' , Warehouse.warehouse_alias) AS warehouse_name,
COUNT(Orders.order_id) AS num_of_orders,
(SELECT
COUNT(*)
FROM warehouse_orders.orders As orders) AS total_orders,
CASE
WHEN COUNT(orders.orders_id/(SELECT COUNT (*) FROM warehouse_orders.orders AS Orders)) <= 0.2
then "Fullfilled 0%-20% of Orders"
WHEN COUNT(orders.orders_id/(SELECT COUNT (*) FROM warehouse_orders.orders AS Orders)) >
0.2
and COUNT(orders.orders_id/(SELECT COUNT (*) FROM warehouse_orders.orders AS Orders)) <=
0.6
then "Fullfilled 21%-60% of Orders"
ELSE "Fullfilled more than 60% of Orders"
END AS fullfillment_summary
FROM `sql-practice-361723.warehouse_orders.Warehouse` AS warehouse
LEFT JOIN
`sql-practice-361723.warehouse_orders.Orders`As Orders
ON
warehouse.warehouse_id = Orders.warehouse_id
GROUP BY
Warehouse.warehouse_id,
warehouse_name
HAVING
COUNT(Orders.order_id > 0)
发布于 2022-09-13 19:51:15
我看了一下,稍微修改了一下代码。我调整了别名,以便在代码的Case部分将数据表的全部位置参数反映出来。
另外,HAVINVG计数代码中也有一个错误。()放错了地方。
不知道别名为什么会起作用,也不会像计划的那样起作用,但是周围的工作很简单,很容易将直接的位置放到案例代码中,并且它解决了我的问题。
值得注意的是,虽然我认为问题出现在FROM LEFT部分,但问题出现在前面的代码中,其中已经填充了表。
任何额外的评论都非常感谢,M
https://stackoverflow.com/questions/73708370
复制相似问题