Mein Ziel ist Beitritt nun beitreten sample_contents
mit sample_commits
von repo_name
02 Tabellen auf BigQuery mit Github-Datensatz
1) Zuerst kam ich mit files
sample_contents
so dass Sie enthält repo_name
SELECT line,a.id,sample_path,sample_repo_name,repo_name
FROM (
SELECT * FROM (
SELECT (SPLIT(content, '\n')) line , a.id,sample_path,sample_repo_name,repo_name
FROM (
(SELECT * FROM [bigquery-public-data:github_repos.sample_contents] WHERE sample_path LIKE '%.java')
) a JOIN (SELECT * FROM [bigquery-public-data:github_repos.files]) b ON a.id=b.id
) WHERE REGEXP_MATCH(line, '^String|^private int|^public|[.]')
)
2) Nun, Ich habe folgendes query
erwartet, um alle Zusagen für alle gegebenen Dateien durch repo_name
zu erhalten:
SELECT (CASE WHEN line CONTAINS 'String' THEN 'String' ELSE '' END) AS column_1,
(CASE WHEN line CONTAINS 'public' THEN 'public' ELSE '' END) AS column_2,line,a.id,sample_path,sample_repo_name,X.repo_name
FROM (
SELECT * FROM (
SELECT (SPLIT(content, '\n')) line , a.id,sample_path,sample_repo_name,repo_name
FROM (
(SELECT * FROM [bigquery-public-data:github_repos.sample_contents] WHERE sample_path LIKE '%.java')
) a JOIN (SELECT * FROM [bigquery-public-data:github_repos.files]) b ON a.id=b.id
) WHERE REGEXP_MATCH(line, '^String|^private int|^public|[.]')
)
X JOIN (SELECT * FROM [bigquery-public-data:github_repos.sample_commits]) Y ON X.repo_name=Y.repo_name LIMIT 100
Aber es gibt 0 Ergebnis zurück! Können Sie mir helfen, dieses Problem zu lösen?
Danke,
Ich bin ein wenig verloren. .. Was ist das Endziel dieser Abfragen? –
Um "Status" von jedem Java-Code pro Repo pro Commit zu verfolgen –
'Zustand'? nicht sicher noch ... –