http://thedailywtf.com/Articles/The-Hot-Room.aspx
你看到底部是如何链接到下一篇和之前的文章("Unprepared For Divide_By_Zero"和"完全不同的游戏")?我该怎么做,但选择下一篇和以前的非私人文章?这适用于选择下一篇文章:
SELECT * FROM articles WHERE id > ? AND private IS NULL
Run Code Online (Sandbox Code Playgroud)
但我找不到选择上一篇文章的方法.
什么是正确/有效的方法,最好是在一个查询中?
或者延伸杰里米的答案......
在一个问题中
(SELECT * FROM articles WHERE id > ?
AND private IS NULL
ORDER BY id ASC LIMIT 1)
UNION
(SELECT * FROM articles WHERE id < ?
AND private IS NULL
ORDER BY id DESC LIMIT 1)
Run Code Online (Sandbox Code Playgroud)
我是这样做的:
-- next
SELECT * FROM articles WHERE id > ? AND private IS NULL ORDER BY id ASC LIMIT 1
-- previous
SELECT * FROM articles WHERE id < ? AND private IS NULL ORDER BY id DESC LIMIT 1
Run Code Online (Sandbox Code Playgroud)
我不确定如何在一个查询中执行此操作.我唯一能想到的可能是在一个查询中同时获取您正在显示的文章和下一篇文章,但这可能会让您感到困惑.
归档时间: |
|
查看次数: |
2734 次 |
最近记录: |