第一次尝试的错误是您不能将聚合函数
count(*)与 未聚合 的行选择混合使用。您可以改用
count()as window-
aggregate函数来解决此问题:
SELECt * FROM ( SELECt *, ((row_number() OVER (ORDER BY "time")) % ceil( **count(*) OVER ()** / 500.0)::int) AS rn FROM data_raw ) subWHERe sub.rn = 0;

第一次尝试的错误是您不能将聚合函数
count(*)与 未聚合 的行选择混合使用。您可以改用
count()as window-
SELECt * FROM ( SELECt *, ((row_number() OVER (ORDER BY "time")) % ceil( **count(*) OVER ()** / 500.0)::int) AS rn FROM data_raw ) subWHERe sub.rn = 0;