mysql - 排序后返回 Asc 增量 MYSQL

标签 mysql laravel

我想在按价格订购后获得 asc 索引号/序列号。这意味着我希望最高金额是第一行,然后它的序列号是 1,依此类推。

serial number |  products  |  price
1                A            10000
2                C            4000
3                B            20
4                D            10

我试过这些:

//第一次尝试

select COALESCE((id) + 0, 0) as serial 

//二审

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

都给我的序列号不是从 1 到 n,它搞砸了。

仅供引用:我使用的是 laravel 4.2

最佳答案

您应该决定您的问题是什么?关于学生 还是关于产品? :-) 苹果还是橘子? :-)

我选择了产品部分:

http://sqlfiddle.com/#!9/fe0f2/2

SET @idx=0;

SELECT * , @idx:=@idx+1 `idx`
FROM products
ORDER BY price desc

关于mysql - 排序后返回 Asc 增量 MYSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32252793/

相关文章:

mysql - docker-compose:mariadb - 连接被拒绝

php - 如何访问 Laravel 中某些特定 Controller 的数据?

jquery - 使用 ajax 发布数据的日期范围选择器

php - 无法使用 Laravel 4 测试带有前缀的路由

mysql - 我可以添加对数据透视表的外键引用吗

php - 从 mysql 表中获取一个值并加 1

php - 锁定表后,我收到警告

mysql - SQL查询查找下一个版本号

php - 使用 Laravel 在 Docker Mysql 上连接被拒绝

mysql - 尝试将文件导入 MySQL (5.7.16),出现错误代码 : 1290( --secure-file-priv) on Mac