Sql GitHub BigQuery随时间提交查询,不返回某些回购的结果
我试图使用GoogleBigQuery上的公共数据集来获取有关GitHub每月提交的数据。下面的查询为Chef和Ansible提供了结果,但没有为Puppet或Salt返回任何结果Sql GitHub BigQuery随时间提交查询,不返回某些回购的结果,sql,github,google-bigquery,Sql,Github,Google Bigquery,我试图使用GoogleBigQuery上的公共数据集来获取有关GitHub每月提交的数据。下面的查询为Chef和Ansible提供了结果,但没有为Puppet或Salt返回任何结果 SELECT MONTH(committer.date) month, YEAR(committer.date) year, repo_name, COUNT(*) commits, FROM [bigquery-public-data:github_repos.commits] WHERE
SELECT
MONTH(committer.date) month,
YEAR(committer.date) year,
repo_name,
COUNT(*) commits,
FROM
[bigquery-public-data:github_repos.commits]
WHERE
repo_name IN ('puppetlabs/puppet',
'saltstack/salt',
'ansible/ansible',
'chef/chef')
GROUP BY
month,
year,
repo_name
然后,我试图通过将WHERE子句修改为以下内容,将查询修改为仅提取Salt或Puppet:
WHERE
repo_name = 'puppetlabs/puppet'
(我还使用“saltstack/salt”作为单独的查询重复了这一点。)在每种情况下,我都收到了错误消息:
“查询返回了零条记录。”
我已尝试通过以下方式进行故障排除:1) 确认我使用的回购协议名称正确
2) 确认回购协议是公开的,并且(理论上)应包括在BigQuery数据中,
3) 我已经将Ansible和Chef的查询结果绑定到github.com上的提交,在这些情况下的查询给出了准确的结果
有人知道问题出在哪里吗?我如何修改查询以返回Salt和Puppet的数据?运行下面的程序,查看puppetlabs中的所有内容
SELECT repo_name, COUNT(1) commits
FROM [bigquery-public-data:github_repos.commits]
WHERE repo_name LIKE 'puppetlabs/%'
GROUP BY repo_name
ORDER BY commits DESC
有很多
puppetlabs/puppet
不是开源的,至少由GitHub的许可证API决定:
curl -H "Accept: application/vnd.github.drax-preview+json" \
https://api.github.com/repos/puppetlabs/puppet |grep license -A 6
"license": {
"key": "other",
"name": "Other",
"spdx_id": null,
"url": null,
"featured": false
},
API的文档:
puppetlabs/puppet
许可证:
SELECT type, COUNT(*) c
FROM [githubarchive:month.201607]
WHERE repo.name = 'puppetlabs/puppet'
AND type='PushEvent'
GROUP BY 1
谢谢@Mikhail Berlyant!该查询的结果仍然非常有趣。例如,saltstack/salt repo不是从数据库返回的,而是具有。puppetlabs/puppet也是如此,我希望它是一个查询结果,但它不是一个查询结果。很奇怪,两份回购协议都没有出现。