我想要 示例表中10%的记录 不是10条记录 此查询在SQL Server中运行
select top 10 percent * from tablename
为什么MySQL中的这个查询不能运行?
select top 10 percent * from tablename
答案 0 :(得分:0)
对于MySQL使用order by
或limit
select * from tablename order by percent desc limit 10
TOP子句适用于
MSSQL server
而不是sql
。
答案 1 :(得分:0)
你可以使用子查询来完成它,这是非常基本的,因为你想要一个表中的所有内容:
SELECT *
FROM (
SELECT tablename.*, @counter := @counter +1 AS counter
FROM (select @counter:=0) AS initvar, tablename
ORDER BY value DESC
) AS X
where counter <= (10/100 * @counter);
ORDER BY value DESC