[英]Bigquery Join syntax errors with example code that works in standard SQL
我正在使用大查詢並希望找到 emailAddress 的第一個訂單的 toalAfterRefund 值。 這兩個 select 語句都作為單獨的語句工作,但我在加入它們時遇到了麻煩。 我得到錯誤
Syntax error: Expected end of input but got keyword JOIN at [1:1]
我無法理解在 bigquery 中將這些語句作為這些語句連接在一起需要做什么。 我正在嘗試獲取 emailAddresses 第一個 orderDate 的 toalAfterRefund 值。
SELECT H.emailAddress, H.orderId, H.orderDate, H.totalAfterRefund
FROM `nexgen-362616.orders.allOrders` AS H
WHERE totalAfterRefund>0
JOIN
(SELECT emailAddress, MIN(OrderDate) AS first_order
FROM `nexgen-362616.orders.allOrders` as X
WHERE totalAfterRefund>0
GROUP BY emailAddress)
ON H.emailAddress = X.emailAddress AND H.orderDate = X.first_order
WITH table_emailAddress as
(SELECT emailAddress, MIN(OrderDate) AS first_order
FROM `nexgen-362616.orders.allOrders` as X
WHERE totalAfterRefund>0
GROUP BY emailAddress)
SELECT H.emailAddress, H.orderId, H.orderDate, H.totalAfterRefund
FROM `nexgen-362616.orders.allOrders` AS H
JOIN table_emailAddress as X
ON H.emailAddress = X.emailAddress AND H.orderDate = X.first_order
WHERE totalAfterRefund>0
您在我們的代碼中有多個問題,
所以
SELECT H.emailAddress, H.orderId, H.orderDate, H.totalAfterRefund, X.first_order
FROM `nexgen-362616.orders.allOrders` AS H
JOIN
(SELECT emailAddress, MIN(OrderDate) AS first_order
FROM `nexgen-362616.orders.allOrders`
WHERE totalAfterRefund>0
GROUP BY emailAddress) as X
ON H.emailAddress = X.emailAddress AND H.orderDate = X.first_order
WHERE totalAfterRefund>0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.