Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
ORDERBY klausa
Klausa ORDER BY mengurutkan kumpulan hasil kueri.
catatan
Ekspresi ORDER BY terluar harus hanya memiliki kolom yang ada di daftar pilih.
Sintaks
[ ORDER BY expression [ ASC | DESC ] ] [ NULLS FIRST | NULLS LAST ] [ LIMIT { count | ALL } ] [ OFFSET start ]
Parameter
- ekspresi
-
Ekspresi yang mendefinisikan urutan pengurutan hasil query. Ini terdiri dari satu atau lebih kolom dalam daftar pilih. Hasil dikembalikan berdasarkan urutan biner UTF -8. Anda juga dapat menentukan yang berikut:
-
Nomor urut yang mewakili posisi entri daftar pilih (atau posisi kolom dalam tabel jika tidak ada daftar pilih)
-
Alias yang menentukan entri daftar pilih
Ketika klausa ORDER BY berisi beberapa ekspresi, kumpulan hasil diurutkan menurut ekspresi pertama, maka ekspresi kedua diterapkan ke baris yang memiliki nilai yang cocok dari ekspresi pertama, dan seterusnya.
-
- ASC | DESC
-
Opsi yang mendefinisikan urutan pengurutan untuk ekspresi, sebagai berikut:
-
ASC: naik (misalnya, rendah ke tinggi untuk nilai numerik dan 'A' ke 'Z' untuk string karakter). Jika tidak ada opsi yang ditentukan, data diurutkan dalam urutan menaik secara default.
-
DESC: turun (tinggi ke rendah untuk nilai numerik; 'Z' ke 'A' untuk string).
-
- NULLS FIRST | NULLS LAST
-
Opsi yang menentukan apakah NULL nilai harus diurutkan terlebih dahulu, sebelum nilai-nilai non-null, atau terakhir, setelah nilai-nilai non-null. Secara default, NULL nilai diurutkan dan diberi peringkat terakhir dalam ASC urutan, dan diurutkan dan diberi peringkat pertama dalam DESC urutan.
- LIMITnomor | ALL
-
Opsi yang mengontrol jumlah baris yang diurutkan yang dikembalikan kueri. LIMITAngka tersebut harus berupa bilangan bulat positif; nilai maksimumnya adalah
2147483647
.LIMIT0 mengembalikan tidak ada baris. Anda dapat menggunakan sintaks ini untuk tujuan pengujian: untuk memeriksa apakah kueri berjalan (tanpa menampilkan baris apa pun) atau mengembalikan daftar kolom dari tabel. Klausa ORDER BY berlebihan jika Anda menggunakan LIMIT 0 untuk mengembalikan daftar kolom. Defaultnya adalah LIMITALL.
- OFFSETmulai
-
Opsi yang menentukan untuk melewati jumlah baris sebelum memulai sebelum mulai mengembalikan baris. OFFSETAngka tersebut harus berupa bilangan bulat positif; nilai maksimumnya adalah
2147483647
. Saat digunakan dengan LIMIT opsi, OFFSET baris dilewati sebelum mulai menghitung LIMIT baris yang dikembalikan. Jika LIMIT opsi tidak digunakan, jumlah baris dalam kumpulan hasil dikurangi dengan jumlah baris yang dilewati. Baris yang dilewati oleh OFFSET klausa masih harus dipindai, jadi mungkin tidak efisien untuk menggunakan nilai yang besar. OFFSET
Catatan penggunaan
Perhatikan perilaku yang diharapkan berikut dengan klausa ORDER BY:
-
NULLnilai dianggap “lebih tinggi” dari semua nilai lainnya. Dengan urutan urutan menaik default, NULL nilai diurutkan di akhir. Untuk mengubah perilaku ini, gunakan NULLS FIRST opsi.
-
Ketika kueri tidak berisi klausa ORDER BY, sistem mengembalikan set hasil tanpa urutan baris yang dapat diprediksi. Kueri yang sama dijalankan dua kali mungkin mengembalikan set hasil dalam urutan yang berbeda.
-
OFFSETOpsi LIMIT dan dapat digunakan tanpa klausa ORDER BY; Namun, untuk mengembalikan serangkaian baris yang konsisten, gunakan opsi ini bersama dengan ORDER BY.
-
Dalam sistem parallel seperti AWS Clean Rooms, ketika ORDER BY tidak menghasilkan urutan yang unik, urutan baris adalah nondeterministik. Artinya, jika ekspresi ORDER BY menghasilkan nilai duplikat, urutan pengembalian baris tersebut mungkin berbeda dari sistem lain atau dari satu proses AWS Clean Rooms ke yang berikutnya.
-
AWS Clean Rooms tidak mendukung literal string dalam klausa ORDER BY.