github アーカイブ ( http://www.githubarchive.org/ ) データで Google BigQuery を使用して、最新のイベント時のリポジトリの統計を取得しようとしています。ウォッチャー。私はこれがたくさんあることを認識していますが、1 つのクエリでそれを取得することに本当に近づいているように感じます。
これは私が今持っているクエリです:
SELECT repository_name, repository_owner, repository_organization, repository_size, repository_watchers as watchers, repository_forks as forks, repository_language, MAX(PARSE_UTC_USEC(created_at)) as time
FROM [githubarchive:github.timeline]
GROUP EACH BY repository_name, repository_owner, repository_organization, repository_size, watchers, forks, repository_language
ORDER BY watchers DESC, time DESC
LIMIT 1000
唯一の問題は、監視されている最高のリポジトリ (twitter ブートストラップ) からのすべてのイベントを取得することです。
結果:
Row repository_name repository_owner repository_organization repository_size watchers forks repository_language time
1 bootstrap twbs twbs 83875 61191 21602 JavaScript 1384991582000000
2 bootstrap twbs twbs 83875 61190 21602 JavaScript 1384991337000000
3 bootstrap twbs twbs 83875 61190 21603 JavaScript 1384989683000000
...
これを取得して、repository_name の単一の結果 (最新、別名 Max(time)) を返すにはどうすればよいですか?
私はもう試した:
SELECT repository_name, repository_owner, repository_organization, repository_size, repository_watchers as watchers, repository_forks as forks, repository_language, MAX(PARSE_UTC_USEC(created_at)) as time
FROM [githubarchive:github.timeline]
WHERE PARSE_UTC_USEC(created_at) IN (SELECT MAX(PARSE_UTC_USEC(created_at)) FROM [githubarchive:github.timeline])
GROUP EACH BY repository_name, repository_owner, repository_organization, repository_size, watchers, forks, repository_language
ORDER BY watchers DESC, time DESC
LIMIT 1000
それが機能するかどうかはわかりませんが、エラーメッセージが表示されるので問題ありません:
Error: Join attribute is not defined: PARSE_UTC_USEC
どんな助けでも素晴らしいでしょう、ありがとう。