Dies kann vielleicht jemandem helfen, der nach einer Möglichkeit sucht, Tabellen nach zwei Spalten zu sortieren, jedoch parallel. Dies bedeutet, zwei Sortierungen mithilfe der aggregierten Sortierfunktion zu kombinieren. Dies ist sehr nützlich, wenn Sie beispielsweise Artikel mithilfe der Volltextsuche abrufen und das Veröffentlichungsdatum des Artikels angeben.
Dies ist nur ein Beispiel, aber wenn Sie auf die Idee kommen, finden Sie viele Aggregatfunktionen, die Sie verwenden können. Sie können die Spalten sogar gewichten, um eine gegenüber der Sekunde zu bevorzugen. Die Funktion von mir nimmt Extreme von beiden Arten, daher sind die am meisten geschätzten Zeilen oben.
Es tut mir leid, wenn es einfachere Lösungen für diesen Job gibt, aber ich habe keine gefunden.
SELECT
`id`,
`text`,
`date`
FROM
(
SELECT
k.`id`,
k.`text`,
k.`date`,
k.`match_order_id`,
@row := @row + 1 as `date_order_id`
FROM
(
SELECT
t.`id`,
t.`text`,
t.`date`,
@row := @row + 1 as `match_order_id`
FROM
(
SELECT
`art_id` AS `id`,
`text` AS `text`,
`date` AS `date`,
MATCH (`text`) AGAINST (:string) AS `match`
FROM int_art_fulltext
WHERE MATCH (`text`) AGAINST (:string IN BOOLEAN MODE)
LIMIT 0,101
) t,
(
SELECT @row := 0
) r
ORDER BY `match` DESC
) k,
(
SELECT @row := 0
) l
ORDER BY k.`date` DESC
) s
ORDER BY (1/`match_order_id`+1/`date_order_id`) DESC