Rumah > pangkalan data > SQL > Penggunaan pangkat dalam sql

Penggunaan pangkat dalam sql

下次还敢
Lepaskan: 2024-05-02 02:30:25
asal
1179 orang telah melayarinya

Fungsi RANK dalam SQL menyusun baris selepas mengisih lajur yang ditentukan Set hasil mengembalikan kedudukan setiap baris, bermula dari 1, dan nilai yang sama mempunyai kedudukan yang sama. Ungkapan partition boleh menentukan lajur partition, dan ranking dilakukan hanya dalam setiap partition Ungkapan isihan menentukan lajur isihan, dan kedudukan ditentukan mengikut susunan data dalam lajur ini.

Penggunaan pangkat dalam sql

Penggunaan fungsi RANK dalam SQL

Fungsi RANK digunakan untuk menyusun set baris berdasarkan susunan data dalam lajur tertentu. Ia ialah fungsi agregat yang mengembalikan kedudukan setiap baris dalam set hasil agregat.

Syntax

<code>RANK() OVER (PARTITION BY partition_expression ORDER BY order_expression)</code>
Salin selepas log masuk

Parameter

  • partition_expression: Pilihan, menentukan lajur partition. Jika dinyatakan, kedudukan hanya dilakukan dalam setiap partition.
  • ungkapan_pesanan: Menentukan lajur pengisihan. Baris akan diberi kedudukan berdasarkan susunan data dalam lajur ini.

Nilai Pulangan

Fungsi RANK mengembalikan integer yang mewakili kedudukan setiap baris. Kedudukan bermula pada 1, dengan baris pertama mempunyai kedudukan tertinggi. Jika berbilang baris mempunyai nilai yang sama, baris tersebut akan mempunyai kedudukan yang sama.

Contoh

<code class="sql">SELECT department_id, employee_name, RANK() OVER (PARTITION BY department_id ORDER BY salary DESC) AS rank
FROM employee_table;</code>
Salin selepas log masuk

Hasil

<code>department_id | employee_name | rank
------------- | ------------- | ----
1             | John Smith    | 1
1             | Jane Doe      | 2
2             | Peter Parker  | 1
2             | Mary Johnson | 2</code>
Salin selepas log masuk

Dalam contoh ini, kita menyusun employee_tabledepartment_id 分区并按 salary dalam tertib menurun. Bagi setiap jabatan, pekerja diberi kedudukan berdasarkan gaji mereka.

NOTA

  • Jika tiada ungkapan partition dinyatakan, kedudukan akan dilakukan di seluruh jadual.
  • Fungsi RANK adalah sensitif kepada nilai pendua. Jika berbilang baris mempunyai nilai yang sama, baris tersebut akan mempunyai kedudukan yang sama.
  • Fungsi RANK adalah serupa dengan fungsi DENSE_RANK, tetapi fungsi DENSE_RANK tidak melangkau kedudukan nilai pendua.

Atas ialah kandungan terperinci Penggunaan pangkat dalam sql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan