【发布时间】:2017-01-13 15:12:16
【问题描述】:
我有一个复杂的选择,例如:
select id from table
left join...
left join... (a lot of joins)
where ... (a lot of ANDs and ORs)
order by... (a lot of orders)
我得到如下结果:
1234
5565
7212
2212
etc.
我有一个属于结果集的 id,例如 7212,并且想知道结果集中的哪一行与该 id 匹配(从第 0 行开始,在我的示例中为第 2 行)。
现在我正在读取所有数据并在 php 中进行比较,但我想知道是否有一个 SQL 语句可以为我执行此操作并在输入 7212 时结果为 2。
事实上,我想获取前一个和下一个 id(第 1 行和第 3 行 = 5565 和 2212),如果在 1 个查询中以某种方式可能会更好。
【问题讨论】: