假设我在数据库中有一个表,比如这个表。假设我想获取主键等于 5(或任何其他主键)的条目左侧和右侧的条目。所以在我们的例子中,我想获取主键分别等于 4 和 6 的条目。会给我这样的结果的 SQL 查询是什么?你们能把 SQL 查询翻译成find('all') CakePHP 查询吗?
谢谢
注意:ID 不一定是连续的,也就是说,它们不一定遵循 1、2、3、4、5、6、7、8 的顺序。我可以有 1、5、13、44、66、123 等
假设我在数据库中有一个表,比如这个表。假设我想获取主键等于 5(或任何其他主键)的条目左侧和右侧的条目。所以在我们的例子中,我想获取主键分别等于 4 和 6 的条目。会给我这样的结果的 SQL 查询是什么?你们能把 SQL 查询翻译成find('all') CakePHP 查询吗?
谢谢
注意:ID 不一定是连续的,也就是说,它们不一定遵循 1、2、3、4、5、6、7、8 的顺序。我可以有 1、5、13、44、66、123 等
像这样尝试联合
(SELECT * FROM employee WHERE id < 5 order by id DESC LIMIT 1)
UNION
(SELECT * FROM employee WHERE id >5 LIMIT 1)
PHP
$id = 5;
SELECT * FROM Employee where id = $id-1 OR id = $id+1;
MySQL
SET @id = 5;
SELECT * FROM Employee where id = @id-1 OR id = @id+1;
结帐find('neighbors')。它返回您指定的记录之前和之后的记录,并且您的 id 在序列中可以有“洞”。