我有这个 MySQL 表:
id | 姓名 |
---|---|
1 | 西班牙语 |
2 | 法语 |
3 | 德语 |
我正在使用这个声明:
SELECT id, Name, Lead(Name) OVER (ORDER BY id) AS 'next' from MyTable WHERE Name='French'
预期结果是这样的:
id | 姓名 | 下一个 |
---|---|---|
2 | 法语 | 德语 |
结果是这样的:
id | 姓名 | 下一个 |
---|---|---|
2 | 法语 | (空) |
我不是 SQL 专家,但这很有效:
With e AS (
SELECT id, Name, Lead(Name) OVER (ORDER BY id) AS 'next' from MyTable
) SELECT Id, Name, next FROM e WHERE Name='French'
也许还有更好的方法。