我想从使用MySQL查询的表中得到结果。我想要做的是我试图从表格中取20条记录。在这20条记录中,前15条记录必须按升序排列,最后5条记录必须按降序排列。我正在尝试,但我没有办法完成这件事。SQL查询得到合并结果
我不知道如何编写子查询。
谢谢。
我想从使用MySQL查询的表中得到结果。我想要做的是我试图从表格中取20条记录。在这20条记录中,前15条记录必须按升序排列,最后5条记录必须按降序排列。我正在尝试,但我没有办法完成这件事。SQL查询得到合并结果
我不知道如何编写子查询。
谢谢。
您可以使用UNION ALL
(SELECT *
FROM table1
ORDER BY column_name
LIMIT 15)
UNION ALL
(SELECT *
FROM table1
ORDER BY column_name DESC
LIMIT 5)
这里是SQLFiddle演示
这将不起作用,B/C最后查询将返回前5个结果降序,所以改变它,限制15,20 – developerCK
嘿peterm ..感谢您的回复如此之快。但是,这是行不通的..我得到这个错误“不正确的使用UNION和ORDER BY”。我的查询是“SELECT * FROM'blogaliys_options' ORDER BY'option_id' LIMIT 15 UNION ALL SELECT * FROM'blogaliys_options' ORDER BY'option_id' DESC LIMIT 5” –
@Yunus你需要括号。看到更新的答案和sqlfiddle演示 – peterm
所以......如果你的表从有数字'1'到'100'这将是你的期望的输出? –