MYSQL NEIGHBOR ROWS和CURRENT ROW

时间:2013-04-23 18:43:38

标签: php mysql cakephp-2.0 mysqli-multi-query

MYSQL查询以获取邻居行以及当前(id)给定条件

ID | BOOK     |
--------------
1  | xyzbooks |

2  | pqrbooks |

3  | dnsaddds |

4  | dfbsakjf |

5  | dbsadbdd |

6  | tyrbooks |

7  | sfdffdsf |

8  | yuibooks |

我在id 3(dnsaddds,我可以从网址获取),我搜索了书籍。 现在我需要获取第3行的行数据,以及搜索文本(书籍)的下一个和上一个结果

结果预期如下

ID | BOOK     | AUTHOR | DATE
---------------------------
2  | pqrbooks | fbsdjf | 2013

3  | dnsaddds | fdsfbs | 2012

6  | tyrbooks | fdsdff | 2011

寻找带有工会等的单一查询。

2 个答案:

答案 0 :(得分:2)

这应该有效:

select id, book, author, date
from t
where id = 3
      OR id = (SELECT MAX(id) FROM t WHERE id < 3)
      OR id = (SELECT MIN(id) FROM t WHERE id > 3)

答案 1 :(得分:0)

您可以通过{{1}将所需的三行组合在一起来执行此操作:

union