Rumah >pangkalan data >Oracle >Apakah kegunaan decode dalam oracle

Apakah kegunaan decode dalam oracle

WBOY
WBOYasal
2022-03-01 10:23:5742954semak imbas

Dalam Oracle, fungsi nyahkod() digunakan untuk membandingkan nilai input dengan senarai parameter dalam fungsi, dan mengembalikan nilai yang sepadan berdasarkan nilai input Sintaksnya ialah "nyahkod(keadaan, nilai 1 , pulangkan nilai 1 , nilai 2, pulangkan nilai 2,... nilai n, nilai pulangan n, nilai lalai)".

Apakah kegunaan decode dalam oracle

Persekitaran pengendalian tutorial ini: sistem Windows 10, versi Oracle 11g, komputer Dell G3.

Apakah penggunaan nyahkod dalam oracle?

Penggunaan nyahkod fungsi Oracle:

decode(条件,值1,返回值1,值2,返回值2,…值n,返回值n,缺省值);

Ini ialah ungkapan penyahkod.

Fungsi DECODE() membandingkan nilai input dengan senarai parameter dalam fungsi dan mengembalikan nilai yang sepadan berdasarkan nilai input. Senarai parameter fungsi terdiri daripada beberapa nilai berangka dan nilai hasil yang sepadan dengan beberapa bentuk genap ordinal. Sudah tentu, jika ia gagal untuk berjaya memadankan mana-mana jujukan parameter sebenar, fungsi itu juga mempunyai nilai pulangan lalai.

Maksud fungsi ini adalah seperti berikut:

IF 条件=值1 THEN
    RETURN(翻译值1)
ELSIF 条件=值2 THEN
    RETURN(翻译值2)
    ......
ELSIF 条件=值n THEN
    RETURN(翻译值n)
ELSE
    RETURN(缺省值)
END IF

nyahkod (operasi medan atau medan, nilai 1, nilai 2, nilai 3)

Hasil daripada ini fungsi ialah , apabila nilai medan atau operasi medan adalah sama dengan nilai 1, fungsi mengembalikan nilai 2, jika tidak ia mengembalikan nilai 3

Sudah tentu, nilai 1, nilai 2, dan nilai 3 juga boleh ekspresi. Fungsi ini memastikan Pernyataan sql lebih mudah

Penggunaan:

1. Bandingkan saiz

pilih nyahkod(tanda(pembolehubah 1-pembolehubah 2),-1. , pembolehubah 1, pembolehubah 2 ) daripada dwi; --Ambil nilai yang lebih kecil

fungsi tanda() masing-masing mengembalikan 0, 1, -1 bergantung pada sama ada nilai ialah 0, nombor positif atau nombor negatif

Contohnya:

Pembolehubah 1=10, pembolehubah 2=20

Kemudian tanda (pembolehubah 1-pembolehubah 2) mengembalikan -1, dan hasil penyahkodan ialah "pembolehubah 1 ", mencapai tujuan mengambil nilai yang lebih kecil.

2. Fungsi ini digunakan dalam pernyataan SQL Fungsi ini diperkenalkan seperti berikut:

Fungsi Nyahkod adalah serupa dengan siri pernyataan IF-THEN-ELSE bersarang. base_exp dibandingkan dengan compare1, compare2, dsb. dalam urutan. Jika base_exp sepadan dengan item bandingkan ke-i, kembalikan nilai sepadan ke-i. Jika base_exp tidak sepadan dengan mana-mana nilai perbandingan, lalai dikembalikan. Setiap nilai perbandingan dinilai dalam urutan, dan jika padanan ditemui, nilai perbandingan yang selebihnya (jika ada) tidak dinilai lagi. NULL base_exp dianggap bersamaan dengan nilai perbandingan NULL. Jika perlu, setiap nilai perbandingan ditukar kepada jenis data yang sama seperti nilai perbandingan pertama, yang juga merupakan jenis nilai pulangan.

Fungsi Nyahkod sangat berguna dalam pembangunan sebenar

Digabungkan dengan fungsi Lpad, cara menambah 1 secara automatik pada nilai kunci utama dan menambah 0 di hadapan

pilih LPAD(nyahkod(kiraan (nombor rekod),0,1, maks(ke_nombor(nombor rekod) 1)),14,'0') nombor rekod daripada tetdmis

cth:

select decode(dir,1,0,1) from a1_interval

nilai dir Jika 1, ia menjadi 0, jika 0, ia menjadi 1

Sebagai contoh, saya ingin menanyakan bilangan lelaki dan perempuan dalam kelas tertentu?

Biasanya kami menulis seperti ini:

select count(*) from 表 where 性别 = 男;
select count(*) from 表 where 性别 = 女;

Jika anda ingin memaparkannya bersama-sama, anda perlu menyatukannya, yang terlalu menyusahkan

Untuk menggunakan penyahkod, anda hanya memerlukan satu ayat

pilih nyahkod (jantina, lelaki, 1, 0), nyahkod( Jantina, perempuan, 1, 0) daripada jadual

3, susunan mengikut untuk melaksanakan pengisihan lajur aksara tertentu

Anda juga boleh menggunakan Nyahkod dalam Pesanan mengikut.

Contoh: jadual table_subject mempunyai lajur nama_subjek. Ia dikehendaki mengisih mereka dalam susunan: bahasa, nombor, dan bahasa asing. Pada masa ini, anda boleh menggunakan Decode dengan mudah untuk melengkapkan keperluan.

select * from table_subject order by decode(subject_name, '语文', 1, '数学', 2, , '外语',3)

Tutorial yang disyorkan: "Tutorial Video Oracle"

Atas ialah kandungan terperinci Apakah kegunaan decode dalam oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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