次のクエリを試しています。
SELECT A,B,C FROM table WHERE field LIKE 'query%'
UNION
SELECT A,B,C FROM table WHERE field LIKE '%query'
UNION
SELECT A,B,C FROM table WHERE field LIKE '%query%'
GROUP BY B ORDER BY B ASC LIMIT 5
これは 3 つのクエリがくっついたものです。ただし、返される結果セットは、望ましくないクエリ #1 の結果の前にクエリ #3 の結果を反映しています。
結果がクエリ #1 のすべて、次にクエリ #2 のすべて、次にクエリ #3 のすべてになるように、これらに優先順位を付ける方法はありますか? PHP ではまだこれを実行したくありません (最初のクエリで表示された結果を 2 番目のクエリで表示しないように制御する必要があることは言うまでもありません)。