Php 按时间戳排序记录,但首先列出指定ID
MySQL 订购人:Php 按时间戳排序记录,但首先列出指定ID,php,mysql,sql-order-by,Php,Mysql,Sql Order By,MySQL 订购人: 从id等于2 然后按时间戳下单 顺序应该是:2,3,1你可以用UNION。。。但我会避免 $a = mysql_query("SELECT * FROM `table` ORDER BY ?? DESC, `timestamp` DESC"); $a = mysql_query("SELECT * FROM `table` WHERE id = 2 ORDER BY `timestamp` DESC UNION SELECT * FROM `table` WHERE id
id
等于2
顺序应该是:2,3,1你可以用UNION。。。但我会避免
$a = mysql_query("SELECT * FROM `table` ORDER BY ?? DESC, `timestamp` DESC");
$a = mysql_query("SELECT * FROM `table` WHERE id = 2 ORDER BY `timestamp` DESC UNION SELECT * FROM `table` WHERE id != 2 ORDER BY `timestamp DESC");
考虑到我在第二次查询中没有一个UNION ALL,id=2的记录将不会被复制。您可以使用UNION。。。但我会避免
$a = mysql_query("SELECT * FROM `table` WHERE id = 2 ORDER BY `timestamp` DESC UNION SELECT * FROM `table` WHERE id != 2 ORDER BY `timestamp DESC");
$a = mysql_query("
(SELECT * FROM `table` WHERE id = 2 ) UNION
(SELECT * FROM table ORDER BY timestamp DESC)
");
考虑到我在第二次查询中没有一个UNION ALL,id=2的记录将不会被复制。有什么理由复制/粘贴我的答案吗^_^@是123 Jody的答案与您的答案不同。因为我们在同一时间提交=-\n他们可能在您单击“提交”时键入了它…相差仅18秒。我的$0.02有什么理由复制/粘贴我的答案吗^_^@是123 Jody的答案与您的答案不同。因为我们在同一时间提交=-\n他们可能在您单击“提交”时键入了它…相差仅18秒。我的$0.02为什么是-1?它返回您想要的。它是否显示语法错误<代码>时间戳应为反勾号。我正在更新答案问题有点不清楚,但是:“顺序应该是:2,3,1”@Frank Farmer:我同意,不清楚。但是这个问题也有按时间戳排序的问题,所以我假设除了id=2之外的所有记录都正确排序。但也有可能期望的顺序是
id=2
,然后是id DESC
。为什么是-1?它返回您想要的。它是否显示语法错误<代码>时间戳应为反勾号。我正在更新答案问题有点不清楚,但是:“顺序应该是:2,3,1”@Frank Farmer:我同意,不清楚。但是这个问题也有按时间戳排序的问题,所以我假设除了id=2之外的所有记录都正确排序。但也有可能期望的顺序是id=2
,然后是id DESC
。这是斯巴达!这么多的反对票没有任何批评,难道没有解决办法吗?顺便说一句,这是一个有效的答案。对不起,如果有人发布它,“没有解决方案/不可能”是一个有效的答案。你说“不可能”是什么意思?这确实是可能的,我在这里看到了至少3个正确答案。这是一个新的否决权竞争吗?哈哈,我第一次看到所有被否决的答案。这是斯巴达!这么多的反对票没有任何批评,难道没有解决办法吗?顺便说一句,这是一个有效的答案。对不起,如果有人发布它,“没有解决方案/不可能”是一个有效的答案。你说“不可能”是什么意思?这确实是可能的,我在这里看到了至少3个正确答案。这是一个新的向下投票竞争吗?
$a = mysql_query("
(SELECT * FROM `table` WHERE id = 2 ) UNION
(SELECT * FROM table ORDER BY timestamp DESC)
");
SELECT * FROM `table` where id = 2
union
SELECT * FROM `table` where id != 2 order by id, timestamp desc