我想在这张桌子上创建烧烤视图:
mytable id _值 s1 \x{e76f} s2 - 31 s3 \x{e76f}
当值<= milestoneValue时,视图需要在10个固定里程碑中的每一行(Id)计数
为mytable生成10行里程碑行的视图如下:
milestoneValue计数 100 -3 90 \3 (all s1 s2 s3) 80 -3 70 \2 (s1,s2) 60.。 30 -1 20 -1 10 -1
我没有找到任何合适的函数来计算这个。我可以将10个二进制标志作为列添加到mytable中的原始数据中,这样我就可以进行求和,但是看不到将其转换为10行里程碑视图的方法。我试过:
SELECT id, value,
IF(value <= 10 , 1, 0) as M10,
IF(value <= 20 , 1, 0) as M20,
...
IF(value <= 90 , 1, 0) as M90,
IF(value <= 100 , 1, 0) as M100
FROM mytable ; 感谢帮助,谢谢
发布于 2015-07-25 03:43:41
SELECT bucket, SUM(word_count>bucket)
FROM [publicdata:samples.shakespeare] a
CROSS JOIN (
SELECT bucket FROM (SELECT 10 bucket), (SELECT 20 bucket), (SELECT 30 bucket), (SELECT 40 bucket)
) b
GROUP BY bucket

https://stackoverflow.com/questions/31621424
复制相似问题