我有一个包含三列的表
fk_id,
sort_column,
value_column
对于每个fk__id_我想通过sort_column检索前5个记录的顺序
我已经尝试了好几个小时了,我对如何做到这一点没有任何想法
我正在使用MySQL
我很感激任何帮助
马克
编辑: 我应该澄清我正在寻找的输出格式: 我想要两列,fk id和value_column 对于每个值,fk id将重复5次
我之所以这样做是因为我以后需要对这个结果集进行一些计算,比如计算每个fk_id的平均值和总和
答案 0 :(得分:1)
使用this code,然后添加AND row_number < 5
答案 1 :(得分:0)
我不认为这可以做到。 您可能必须使用脚本语言为每个fk_id单独执行此操作
我可能是错的
答案 2 :(得分:0)
这将做你想要的。
SELECT t1.fk_id, t1.value_column
FROM table AS t1
LEFT JOIN table AS t2
ON t1.fk_id=t2.fk_id AND t1.sort_column < t2.sort_column
WHERE t2.fk_id IS NULL
ORDER BY t1.sort_column DESC
LIMIT 5