Mem*_*r-X 9 mysql sql row-number
我正在尝试将在Microsoft SQL Server中创建的SQL脚本转换为使用链接服务器运行到可以在SQL过程中使用的脚本,我正在使用的脚本
ROW_NUMBER() OVER(ORDER BY [FIELDS])
Run Code Online (Sandbox Code Playgroud)
创建一个不依赖于自动增量的主键,当我尝试将代码保存为过程时,我得到此错误
错误1064(42000):您的SQL语法有错误:检查与您的MySQL服务器版本对应的手册,以便在[LINENO]行附近的'(ORDER BY [FIELDS])'附近使用正确的语法
显然错误是说ROW_NUMBER OVER不对,因为我删除了OVER位并得到一个错误,说ROW_NUMBER未定义
在我搜索的任何地方我得到的只是人们问SELECT语句的这个问题,而不是INSERT语句和答案大多数时间只是获取行数或插入最后一个id,所以我可以用来创建与ROW_NUMBER()在Microsoft Server中相同的数据
Joh*_*Woo 18
不幸的是,ROW_NUMBER()在MySQL中没有等效的东西,但你仍然可以通过创建一个简单的变量来模拟它,该变量保存一个值,每行增加一个值.
例:
SET @rank=0;
SELECT @rank := @rank+1 AS rank, fruit, amount
FROM sales
ORDER BY amount DESC;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18130 次 |
| 最近记录: |