ORDER BY句を使用して、特定のフィールドに基づいてクエリ結果を並べ替えることができます。 LIMIT句をORDER BY句と一緒に使用して、ソート後に返される行の数を指定できます。 このトピックでは、ORDER BY構文について説明し、ORDER BY句の使用方法の例を示します。
構文
ORDER BY expression
[ ASC | DESC ]
[ LIMIT count]
パラメーター | 必須 | 説明 |
| 必須 | クエリ結果の並べ替えに基づいたフィールド。 有効な値:
|
| 選択可能 | クエリ結果をソートする順序です。 有効な値:
説明
|
| 返される行の数。 このパラメーターを空のままにすると、クエリ結果のすべての行が返されます。 |
例
さまざまな都市のデバイス販売を照会し、デバイス名とデバイス販売で結果を並べ替えます。
SELECT os,device,city,COUNT(*) AS num FROM requests GROUP BY os,device,city ORDER BY num,device;
次の情報が返されます。
os |device |city |num --------+-------+-------------+--- Linux |PC |Shanghai |1 windows |PC |Shenzhen |1 windows |PC |Shanghai |1 windows |PC |Hangzhou |1 windows |Phone |Shenzhen |1 Linux |Phone |Hangzhou |1 ios |Phone |Zhangjiakou |1 windows |PC |Shijiazhuang |2 Linux |PC |Beijing |2 ios |Phone |Shijiazhuang |2 windows |Phone |Shijiazhuang |2 Linux |Phone |Beijing |2 windows |PC |Beijing |4
デバイスの売上高が最も高い上位5都市を照会し、結果をデバイス名で降順に、デバイスの売上高で昇順に並べ替えます。
SELECT os,device,city,COUNT(*) AS num FROM requests GROUP BY os,device,city ORDER BY 2 DESC,4 ASC LIMIT 5;
次の情報が返されます。
os |device |city |num -------+-------+------------+---- ios |Phone |Zhangjiakou |1 windows|Phone |Shenzhen |1 Linux |Phone |Hangzhou |1 windows|Phone |Shijiazhuang|2 Linux |Phone |Beijing |2