Cho*_*ots 2 sql sql-server sql-server-2008
我正在尝试创建两个临时表并将它们与永久表连接起来。例如:
WITH temp1 AS (COUNT(*) AS count_sales, ID FROM table1 GROUP BY ID)
WITH temp2 AS (COUNT(*) AS count_somethingelse, ID FROM table2 GROUP BY ID)
SELECT *
FROM table3 JOIN table2 JOIN table1
ON table1.ID = table2.ID = table3.ID
Run Code Online (Sandbox Code Playgroud)
但似乎存在多个WITH tablename AS (...) 语句的问题。我尝试了一个分号。
您的查询应该看起来更像这样:
WITH temp1 AS (
SELECT COUNT(*) AS count_sales, ID
FROM table1
GROUP BY ID
),
temp2 AS (
SELECT COUNT(*) AS count_somethingelse, ID
FROM table2
GROUP BY ID
)
SELECT *
FROM temp2 JOIN
temp1
ON temp1.ID = temp2.ID;
Run Code Online (Sandbox Code Playgroud)
您的查询有多个错误。我建议您首先了解此版本为何有效——或者至少可以做一些除了报告语法错误之外的事情。然后,回去再研究一下 SQL。