假设我在this table这样的数据库中有一个表。假设我想获取主键等于5(或任何其他主键)的条目左侧和右侧的条目。所以在我们的例子中,我想得到主键分别等于4和6的条目。什么是SQL查询会给我这样的结果?你们可以将SQL查询翻译成find('all') CakePHP查询吗?
谢谢
注意:ID不一定是连续的,这意味着它们不一定遵循1,2,3,4,5,6,7,8序列。我可以有类似1,5,13,44,66,123等的东西
答案 0 :(得分:3)
尝试像这样的联盟
(SELECT * FROM employee WHERE id < 5 order by id DESC LIMIT 1)
UNION
(SELECT * FROM employee WHERE id >5 LIMIT 1)
答案 1 :(得分: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;
答案 2 :(得分:0)
结帐find('neighbors')。它返回您指定的记录之前和之后的记录,并且您的ID在序列中可以有“洞”。