我有一个查询,我想先输出所需的记录,然后输出结果集的其余部分。
我有一个新闻项目列表,每个项目旁边都有“阅读更多”。
当用户点击“阅读更多”链接时,他们会被带到我想要他们选择的新闻项目的新闻页面(让我们现在说它的id = 1)然后我希望剩下的新闻项目是输出后按日期排序。
我到目前为止:
"SELECT * FROM news ORDER BY(id, 1), newsdate DESC"
答案 0 :(得分:0)
你可能能够构建一些这样的东西,但我个人只会回到两个问题;
SELECT * FROM news WHERE id=$id
然后;
SELECT * FROM news WHERE id<>$id ORDER BY newsdate DESC
如果您需要将单个结果集传递给您的视图,那么您可以连接这两个结果集。
答案 1 :(得分:0)
也许你只需要一个UNION查询:
SELECT * FROM news WHERE id=1
UNION (SELECT * FROM news WHERE id<>1 ORDER BY newsdate DESC)
确保在()之间包含第二个查询。
或者您也可以使用这样的技巧:
SELECT * FROM news ORDER BY id=1 DESC, newsdate DESC