[英]join for two subquery select statement does't work
我正在尝试加入两个 select 语句/查询,以获得结合结果的数据集。 这两个查询分别工作得很好,但是当我尝试使用 join 组合它们时,会发生错误。 错误:第 10 行的“select”处或附近的语法错误,position 1。有人可以帮我,谢谢!
select * from
(
select dt, count(*) over (order by dt asc) as cumuA from
(Select date_trunc('week',block_time) AS dt,"from" as sender
FROM data where "to" = 'xxxx')
as AAA
join
Select dt, count(*) over (order by dt asc) as cumuB from (
Select min(date_trunc('week',block_time)) dt, "from" as sender from data where "to" = 'xxxx'
group by sender)
as BBB
ON AAA.dt = BBB.dt
)
我不是在看查询实际做了什么,或者是否有更好的方法:只是解决报告的错误。
SELECT * FROM
(
SELECT *
FROM (SELECT dt, count(*) over (order by dt asc) as cumuA
FROM (SELECT date_trunc('week',block_time) AS dt,"from" as sender
FROM data
WHERE "to" = 'xxxx'
) as aa
) as AAA
join
SELECT * FROM --< this line makes no sense. One need not select again after the join. the inline view BBB is sufficient. and the select is just a syntax error.
(SELECT dt, count(*) over (order by dt asc) as cumuB
FROM (SELECT min(date_trunc('week',block_time)) dt, "from" as sender
FROM data
WHERE "to" = 'xxxx'
GROUP BY sender
) AS bb
) as BBB
ON AAA.dt = BBB.dt
)
我认为你需要它是:
SELECT * FROM
(
SELECT *
FROM (SELECT dt, count(*) over (order by dt asc) as cumuA
FROM (SELECT date_trunc('week',block_time) AS dt,"from" as sender
FROM data
WHERE "to" = 'xxxx'
) as aa
) as AAA
join
(SELECT dt, count(*) over (order by dt asc) as cumuB
FROM (SELECT min(date_trunc('week',block_time)) dt, "from" as sender
FROM data
WHERE "to" = 'xxxx'
GROUP BY sender
) AS bb
) as BBB
ON AAA.dt = BBB.dt
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.