当前位置: 首页 > 面试题库 >

MySQL:限制为记录量的百分比吗?

姜聪
2023-03-14
问题内容

假设我有一个值列表,像这样:

id  value
----------
A   53
B   23
C   12
D   72
E   21
F   16
..

我需要此列表中前10 的内容-我尝试过:

  SELECT id, value 
    FROM list
ORDER BY value DESC
   LIMIT COUNT(*) / 10

但这是行不通的。问题是在执行查询之前,我不知道记录的数量。有任何想法吗?


问题答案:

我发现的最佳答案:

SELECT*
FROM    (
    SELECT list.*, @counter := @counter +1 AS counter
    FROM (select @counter:=0) AS initvar, list
    ORDER BY value DESC   
) AS X
where counter <= (10/100 * @counter);
ORDER BY value DESC

将10更改为其他百分比。



 类似资料:
  • 问题内容: 关闭。 这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Stack Overflow的主题。 8年前关闭。 改善这个问题 我在使用MySQL的数据库上执行SQL查询,但仅从预期的24000行中获取了前1000行。如果将结果导出到XML表单,我将再次获得前1000个。有没有办法禁用该限制并取回所有行?否则,我将不得不合并24个XML文件:/ 问题答案: 请执行

  • 问题内容: 我有4个项目MySQL数据库:(数值),和。 在我的报告中,我需要通过“调查”中的数字来计算已参加调查的“雇员”的百分比。 这是我现在的声明: 表格如下: 我想按参加调查的人数来计算谁所占的百分比。即,如以上数据所示,分别为0%和95%。 问题答案: 尝试这个 在这里演示

  • 我有一个包含4个项的MySQL数据库:(数值)、、和。 在我的中,我需要根据“surveys”中的数字来计算接受调查的“employees”的百分比。 这就是我现在的说法: 下面是表格的原样: 我想根据中的数字计算参加调查的的百分比。即,如上面的数据所示,将为0%,将为95%。

  • 问题内容: 我想使用第二列(art_count)仅显示那些包含总art_count的X%的行。 我的资料: 到目前为止我的查询: 使用SUM进行了尝试,但未成功。 问题答案: 您需要为插入一个值

  • 问题内容: 我有一个数据库,有两个表和。表中有一个主键,表中有一个外键。 我想在表上创建一个约束,表中最多可以存储5个约束。 我需要知道这种约束的类型,以及如何通过SQL Server中的查询来完成此约束。 问题答案: 没有约束可以强制执行该规则,但是可以使用如下所示的触发器来做到这一点:

  • 在MariaDB数据库中,使用语句和子句从表中检索一个或多个记录。 语法: 示例1: 以降序检索记录: 使用语句并带有子句查询表中的数据。结果列的值按降序显示,为。参考如下语句 - 执行上面查询语句,得到以下结果 - 示例2: 按列的值升序检索记录: 执行上面查询语句,得到以下结果 - 示例3:分页 在应用程序中,由于数据记录太多,不能全在一个页面中全部显示,我们经常要使用分页来显示。假设每页显示