此查询用于检索某些消息,它会返回所有消息:
$q = "
SELECT *
FROM pms
WHERE
(
(id_to = $id and id_from = ".sesion().")
OR
(id_from = $id and id_to = ".sesion().")
)
AND (id > $from)
ORDER by fecha ASC";
问题是我想获得最后50个元素,但我认为它可以使用DESC排序...
我该怎么做?
我是否需要首先计算行数,以便我可以使用LIMIT $many-$ipp,$many
?或者有没有办法反转结果顺序?
答案 0 :(得分:2)
只需将查询作为子查询:
SELECT * FROM
(
SELECT *
FROM pms
WHERE
(
(id_to = $id AND id_from = ".sesion().")
OR (id_from = $id and id_to = ".sesion().")
)
AND id > $from
ORDER BY fecha DESC
LIMIT 50
) q1
ORDER BY fecha ASC