我是Google大查询的新手,我想从数据库中提取帖子标题、帖子正文、评论、评分和创建日期,这些文章是在2010年或2010年以后为subreddit创建的,目前我已经能够使用以下方式查询所有subreddit评论
SELECT * FROM `pushshift.rt_reddit.comments` WHERE lower(subreddit)="politics"但我的动机是加入评论和帖子表,以产生所需的结果,但我无法找到如何做到这一点,如何才能实现呢?如果需要更多的细节,请告诉我。谢谢
发布于 2020-08-11 03:16:38
只是一个简短的笔记..。您引用的表似乎停止了@ 2018-08-27 06:59:08 UTC -这意味着如果您正在寻找更多最新的帖子/评论,您可能需要找到另一个数据源。
标准SQL:
SELECT
s.title,
s.selftext,
s.score,
s.created_utc post_created_utc,
s.author,
ARRAY_AGG( STRUCT( c.body,
c.created_utc,
c.author ) ) comments
FROM
`pushshift.rt_reddit.submissions` s
LEFT OUTER JOIN
`pushshift.rt_reddit.comments` c
ON
CAST(s.id AS string) = c.link_id
WHERE
REGEXP_CONTAINS(c.subreddit, r'(?i)^politics$')
AND s.created_utc > '2009-12-31'
GROUP BY
1,
2,
3,
4,
5
LIMIT
10;日期SQL:
SELECT
MAX(created_utc)
FROM
`pushshift.rt_reddit.submissions` fh-bigquery.reddit_注释的代码.效果也一样。也许在2018年之前使用这个帖子和更早的代码。
SELECT
s.title,
s.selftext,
s.score,
TIMESTAMP_SECONDS(s.created_utc ) post_created_utc,
s.author,
c.subreddit,
ARRAY_AGG( STRUCT( c.body,
c.created_utc,
c.author ) ) comments
FROM
`fh-bigquery.reddit_posts.20*` s
LEFT OUTER JOIN
`fh-bigquery.reddit_comments.20*` c
ON
regexp_extract(c.link_id,r'(.{6})\s*$') = s.id
WHERE
TIMESTAMP_SECONDS(s.created_utc ) between '2019-01-01' and '2019-01-03'
GROUP BY
1,
2,
3,
4,
5,
6
LIMIT
10;https://stackoverflow.com/questions/63348581
复制相似问题