googlebigquery-运行query时出错:STDDEV是一个分析函数,必须附带一个OVER子句



SELECT user,Lat,Long,stdlat,stdlong
发件人
(选择
user,ROUND(locLatitude,2FROM[表]
WHERE product='ABC'
AND YEAR(StartTime)=2016
AND开始时间<=CURRENT_TIMESTAMP()
AND STDDEV(locLatitude)<10
AND STDDEV(locLongitude)<10
按1,2,3分组)
位置
stdlat<2
AND stdlong<2
AND Lat NOT IN(0.0)
AND Long NOT IN(0.0)
按1,2,3,4,5分组

当我执行上面的查询时,我得到一个错误,说"运行查询时出错:STDDEV是一个分析函数,必须伴随一个OVER子句"

有人能帮我理解我的查询出了什么问题吗?

尝试以下针对内部SELECT 的修复程序

  SELECT
    user,
    ROUND(locLatitude,2) AS Lat,
    ROUND(locLongitude,2) AS Long,
    STDDEV(locLatitude) AS stdlat,
    STDDEV(locLongitude) AS stdlong
  FROM [Table]
  WHERE product='ABC'
    AND YEAR(StartTime) =2016
    AND StartTime <= CURRENT_TIMESTAMP()
  GROUP BY 1,2,3
  HAVING stdlat < 10
  AND stdlong < 10

最新更新