2016-08-12 48 views
0

我想获取表tb1中每个id的两个样本记录。我试着用下面的查询,但没有得到所需的结果。查询以获取谷歌BigQuery中每个ID的两个样本记录

任何帮助,将不胜感激。

SELECT 
Id, 
DateTime 
FROM (
    SELECT 
    Id,DateTime,RAND() AS rnd, 
    ROW_NUMBER() OVER(PARTITION BY DateTime ORDER BY rnd) AS pos 
    FROM 
    [proj:tb1.UtilDateTime]) 
WHERE pos <= 2 
ORDER BY VehicleId,DateTime 
+0

如果答案帮助你解决问题,你接受了它 - 也请考虑投票起来。请参阅http://stackoverflow.com/help/someone-answers –

回答

0

尝试

SELECT 
Id, 
DateTime 
FROM (
    SELECT 
    Id,DateTime,RAND() AS rnd, 
    ROW_NUMBER() OVER(PARTITION BY Id ORDER BY rnd) AS pos 
    FROM 
    [proj:tb1.UtilDateTime]) 
WHERE pos <= 2 
ORDER BY Id,DateTime 
+0

感谢您只是想出了我的错误。 – user3447653

相关问题