1

このクエリはいくつかのメッセージを取得するためのものであり、それらすべてを再調整します。

$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か?または、結果の順序を逆にする方法はありますか?

4

1 に答える 1

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
于 2012-09-17T18:36:33.787 に答える