可能重复:
Select TOP X (or bottom) percent for numeric values in MySQL
我如何在MySQL中编写此查询?
SELECT TOP 50 PERCENT * FROM Persons
表格中的条目数量会不断变化,因此我需要按百分比而不是固定数字进行选择。
答案 0 :(得分:8)
这实际上是duplicate question,但我现在有一个更好的,单通,快速的答案:
Select *
from
(
SELECT tbl.*, @counter := @counter +1 counter
FROM (select @counter:=0) initvar, tbl
ORDER BY ordcolumn
) X
where counter <= (50/100 * @counter);
ORDER BY ordcolumn