Penggunaan pangkat dalam sql
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 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>
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
SELECT department_id, employee_name, RANK() OVER (PARTITION BY department_id ORDER BY salary DESC) AS rank FROM employee_table;
Hasil
<code>department_id | employee_name | rank ------------- | ------------- | ---- 1 | John Smith | 1 1 | Jane Doe | 2 2 | Peter Parker | 1 2 | Mary Johnson | 2</code>
Dalam contoh ini, kita menyusun employee_table
按 department_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!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

SUM dalam Oracle digunakan untuk mengira jumlah nilai bukan nol, manakala COUNT mengira bilangan nilai bukan nol semua jenis data, termasuk nilai pendua.

Fungsi SUM() dalam SQL digunakan untuk mengira jumlah lajur berangka. Ia boleh mengira jumlah berdasarkan lajur, penapis, alias, pengelompokan dan pengagregatan berbilang lajur yang ditentukan, tetapi hanya mengendalikan nilai angka dan mengabaikan nilai NULL.

Fungsi COUNT dalam Oracle digunakan untuk mengira nilai bukan nol dalam lajur atau ungkapan tertentu Sintaks ialah COUNT(DISTINCT <column_name>) atau COUNT(*), yang mengira bilangan nilai unik dan semua bukan. -nilai nol masing-masing.

Fungsi AVG() MySQL digunakan untuk mengira purata nilai berangka. Ia menyokong pelbagai kegunaan, termasuk: Kira kuantiti purata semua produk yang dijual: PILIH AVG(kuantiti_jualan) DARI jualan Hitung harga purata: AVG(harga) Kira purata volum jualan: AVG(kuantiti_harga *). Fungsi AVG() mengabaikan nilai NULL, gunakan IFNULL() untuk mengira purata nilai bukan nol.

GROUP BY ialah fungsi agregat dalam SQL yang digunakan untuk mengumpulkan data berdasarkan lajur yang ditentukan dan melaksanakan operasi pengagregatan. Ia membenarkan pengguna untuk: Mengumpulkan baris data berdasarkan nilai lajur tertentu. Gunakan fungsi agregat (seperti jumlah, kiraan, purata) pada setiap kumpulan. Buat ringkasan bermakna daripada set data yang besar, lakukan pengagregatan dan pengelompokan data.

SC bermaksud SELECT COUNT dalam SQL, fungsi agregat yang digunakan untuk mengira bilangan rekod sama ada syarat dipenuhi atau tidak. Sintaks SC: SELECT COUNT(*) AS record_count FROM table_name WHERE keadaan, dengan COUNT(*) mengira bilangan semua rekod, table_name ialah nama jadual dan syarat ialah syarat pilihan (digunakan untuk mengira bilangan rekod yang memenuhi keadaan).

Fungsi SQL SUM mengira jumlah set nombor dengan menambahkannya bersama-sama. Proses operasi termasuk: 1. Mengenal pasti nilai input 2. Menggelung nilai input dan menukarnya kepada nombor 3. Menambah setiap nombor untuk mengumpul hasil jumlah;

Klausa HAVING digunakan untuk menapis set hasil yang dikumpulkan oleh klausa GROUP BY Sintaksnya ialah HAVING <condition>, dengan <condition> ialah ungkapan Boolean. Perbezaan dengan klausa WHERE ialah klausa HAVING menapis kumpulan selepas pengagregatan, manakala klausa WHERE menapis baris sebelum pengagregatan. Ia boleh digunakan untuk menapis set hasil terkumpul, melakukan pengiraan agregat pada data, membuat laporan hierarki atau meringkaskan pertanyaan.
