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

MySQL查询选择具有自动增量的结果作为结果中添加的新列

慕项明
2023-03-14
问题内容

我有一个带有以下字段的学生桌:

student(student_id, student_name, student_avg)

我需要在MySQL中编写一个查询,将查询结果显示为:

序列号。=>结果还应该有一个带有序列号的新列,1,2,3,...,n就像结果中每一行的自动递增一样。

student_id
student_name
student_avg > 4

我不想以任何方式更改我的桌子。我所要做的就是编写一个查询,该查询将给我以上结果。我希望我清楚。

示例数据:

student_id         student_name      student_avg 
 1                    abc               2.5
 2                    xyz               4.1
 3                    def               4.2

查询后的样本输出:

serial_no    student_id    student_name     student_avg
  1             2            xyz               4.1
  2             3            def               4.2

问题答案:

试试这个

SELECT  @s:=@s+1 serial_number,student_id,student_name,student_avg
FROM    students,
        (SELECT @s:= 0) AS s
WHERE
student_avg > 4;

https://stackoverflow.com/a/11096550/1423506



 类似资料:
  • 问题内容: 我需要您的帮助,这是我的SQL查询: 这是我的结果: 现在我必须计算第一个查询的结果! 问题答案: 您可以将查询换成另一个: 参见带有演示的SQL Fiddle 为了使其工作,需要一个列别名,并且您必须为子查询本身提供一个别名。

  • 问题内容: 我有一张桌子,上面满是物品和所说物品的价格。我想获取3个最高价商品的总和。 我想也许可以,但这似乎并不能解决问题。这可能吗?谢谢! 问题答案:

  • 问题内容: 我想知道是否可以运行这样的请求: 这个想法是用t1的一些数据填充t2,但是我在语法上一定是错误的。 谢谢你的帮助 问题答案: 从语句插入时不使用关键字。

  • 问题内容: 有什么办法可以将mysql结果存储在php变量中?谢谢 然后我要从查询中打印选定的用户ID。 问题答案: 当然有。签出,以及是否使用MySQL。 PHP手册中的 示例:

  • 问题内容: 我目前有两个选择命令如下。我想做的是将结果添加到SQL查询中,而不是代码中的变量。 是否可以将两者都放在同一SQL中并输出两个结果的总和? 问题答案: 是的。有可能的 附带说明,必须对表名定界以避免语法错误。分隔符在您使用的RDBMS上有所不同。

  • 问题内容: 我正在用SSRS编写一份报告。该数据集填充有MS SQL Server的SQL查询。它使用Union All查询几个相似的表。问题是有一些信息丢失。不同的表适用于不同的工作站点,但是这些表中的任何列都没有站点名称。标识站点的唯一方法是通过表名。在“全部合并”的结果的合并列中,无法分辨出哪些行来自哪个站点。 有没有一种方法可以更改我的查询以在结果中添加一列,该列将具有与每一行相关联的工作