Sql 选择上面的列(按列划分)

Sql 选择上面的列(按列划分),sql,hana,Sql,Hana,假设我想检索游泳运动员和他们每天在第75百分位的时间 这就是我想做的: SELECT tableA.DATE, tableA.SWIMMER, tableA.TIME OVER (PARTITION BY tableA.DATE) FROM tableA WHERE RANK = CEIL(0.75 * NUM_OF_SWIMMERS); 但这是错误的过度陈述 获取所需数据的最佳方式是什么 谢谢 您

假设我想检索游泳运动员和他们每天在第75百分位的时间

这就是我想做的:

SELECT tableA.DATE, tableA.SWIMMER, tableA.TIME
                OVER (PARTITION BY tableA.DATE)
                FROM tableA
                WHERE RANK = CEIL(0.75 * NUM_OF_SWIMMERS);
但这是错误的过度陈述

获取所需数据的最佳方式是什么


谢谢

您的错误是窗口函数的OVER子句需要ORDER BY子句

但是假设是游泳运动员,为什么不回来呢

select
   date,
swimmer,
time
from tablea
where 
RANK = CEIL(0.75 * NUM_OF_SWIMMERS)
?


WHERE子句将确保返回的唯一行是给定日期的第75个百分位

您的错误是窗口函数的OVER子句需要ORDER BY子句

但是假设是游泳运动员,为什么不回来呢

select
   date,
swimmer,
time
from tablea
where 
RANK = CEIL(0.75 * NUM_OF_SWIMMERS)
?


WHERE子句将确保返回的唯一行是给定日期的第75个百分位

发布实际错误比简单地注明“错误”要有用得多。错误:“结束(第2行第5列)”附近的无效语法为什么不从表a中选择日期、游泳者、时间,其中rank=CEIL(0.75*NUM\u OF\u游泳者)?这将返回您需要的2行。是的,您的错误是因为OVER()子句必须有ORDER BY子句,但根据您的需求和数据,您似乎不需要ORDER BY子句。实际上,我只是来这里说我尝试了这个^。谢谢@KyleHale。您想将其作为答案提交吗?发布实际错误比简单地注明“错误”要有用得多。错误:“结束(第2行第5列)”附近的语法无效。为什么不从表a中选择日期、游泳者、时间,其中rank=CEIL(0.75*NUM\u OF\u游泳者)?这将返回您需要的2行。是的,您的错误是因为OVER()子句必须有ORDER BY子句,但根据您的需求和数据,您似乎不需要ORDER BY子句。实际上,我只是来这里说我尝试了这个^。谢谢@KyleHale。你想把它作为答案提交吗?