Rumah > Artikel > pangkalan data > oracle menukar kepada rentetan
Dalam pangkalan data Oracle, kadangkala adalah perlu untuk menukar data angka atau tarikh kepada jenis rentetan untuk memudahkan operasi penyambungan output atau rentetan. Artikel ini akan memperkenalkan cara menukar data angka, tarikh dan Boolean kepada jenis rentetan dalam pangkalan data Oracle.
1. Tukar jenis angka kepada jenis rentetan
Dalam pangkalan data Oracle, penukaran jenis angka kepada jenis rentetan yang paling biasa digunakan jenis fungsi ialah fungsi TO_CHAR, dan sintaksnya adalah seperti berikut:
TO_CHAR(nombor, [format], [nls_language])
Antaranya, nombor mewakili jenis berangka yang hendak ditukar , dan format mewakili pemformatan Templat boleh menjadi format pratetap atau format tersuai nls_language mewakili tempat data Jika parameter ini ditinggalkan, nilai lalai sesi semasa digunakan. Berikut ialah beberapa templat pemformatan yang biasa digunakan:
Penerangan Templat
Ruang peneraju FM dipadamkan
0 Isi digit yang hilang dengan 0
09 Isikan digit yang hilang dengan 0, penjajaran dua digit
9999 Isikan ruang untuk digit yang hilang, sejajarkan empat digit
$9,999 Amaun yang ditandatangani, kumpulkan dengan tiga digit
Dollar9,999.99 Amaun yang ditandatangani, pemisah beribu-ribu dan dua tempat perpuluhan
Sebagai contoh, letakkan nombor 12345.67 ditukar kepada jenis rentetan, formatnya ialah format mata wang dan persekitaran bahasa Inggeris AS digunakan Anda boleh menggunakan kod berikut:
SELECT TO_CHAR(12345.67, '$9,999.99', 'NLS_LANGUAGE=. AMERICAN')
DARI dwi;
Hasil keluaran ialah: $12,345.67.
Selain fungsi TO_CHAR, Oracle juga menyediakan fungsi CAST untuk menukar jenis angka kepada jenis rentetan Sintaks adalah seperti berikut:
CAST(expression AS data_type)
Antaranya, ungkapan mewakili jenis berangka yang hendak ditukar dan data_type mewakili jenis data sasaran yang hendak ditukar. Di sini, kita boleh menukar jenis angka kepada jenis CHAR atau VARCHAR2. Sebagai contoh, untuk menukar nombor 12345.67 kepada jenis rentetan, anda boleh menggunakan kod berikut:
PILIH CAST(12345.67 AS VARCHAR2(10))
DARI dwi;
Output keputusan ialah: 12345.67.
2. Tukar jenis tarikh kepada jenis rentetan
Dalam pangkalan data Oracle, tukar data jenis tarikh kepada jenis rentetan dengan cara yang sama Anda boleh menggunakan fungsi TO_CHAR, sintaksnya adalah seperti berikut:
TO_CHAR(tarikh, [format], [nls_language])
Antaranya, tarikh mewakili data tarikh untuk ditukar dan format mewakili Templat yang diformat, nls_language mewakili tempat data. Berikut ialah beberapa templat pemformatan yang biasa digunakan:
Penerangan Templat
YYYY-MM-DD Tahun, bulan dan hari tarikh
TTTT-MM-DD HH24:MI:SS Tahun, bulan tarikh , hari, jam, minit dan saat
BULAN Nama penuh bulan (seperti Januari)
ISN Singkatan bulan (seperti Jan)
DD-MON-YYYY The hari, bulan dan tahun tarikh (seperti 31- JAN-2022)
Sebagai contoh, untuk menukar data tarikh '2022-01-31' kepada jenis rentetan, anda boleh menggunakan kod berikut:
PILIH TO_CHAR('2022-01-31' , 'YYYY-MM-DD')
DARI dwi;
Hasil output ialah: 2022-01-31.
Selain fungsi TO_CHAR, Oracle juga menyediakan fungsi CAST untuk menukar data tarikh kepada jenis rentetan Sintaks adalah seperti berikut:
CAST(expression AS data_type)
Antaranya, ungkapan mewakili data tarikh untuk ditukar dan data_type mewakili jenis data sasaran yang akan ditukar. Di sini, kita boleh menukar data jenis tarikh kepada jenis CHAR atau VARCHAR2. Contohnya, untuk menukar data tarikh '2022-01-31' kepada jenis rentetan, anda boleh menggunakan kod berikut:
PILIH CAST('2022-01-31' AS VARCHAR2(10))
DARI dwi;
Hasil keluaran ialah: 2022-01-31.
3. Penukaran jenis Boolean kepada jenis rentetan
Dalam pangkalan data Oracle, data Boolean tidak boleh ditukar terus kepada jenis rentetan, tetapi data Boolean boleh ditukar dengan bantuan ungkapan CASE. Berikut ialah contoh kod yang menukar data Boolean kepada jenis rentetan:
PILIH
CASE WHEN flag = 'true' THEN 'Yes' WHEN flag = 'false' THEN 'No' END AS result
DARI my_table;
di mana bendera ialah data Boolean, 'true' dan 'false' ialah jenis rentetan, dan hasilnya ialah jenis rentetan yang ditukar. Jika bendera 'benar', kembalikan 'Ya'; jika bendera 'salah', kembalikan 'Tidak'.
Ringkasnya, artikel ini memperkenalkan kaedah menukar data angka, tarikh dan Boolean kepada jenis rentetan dalam pangkalan data Oracle. Untuk data angka dan tarikh, kita boleh menggunakan fungsi TO_CHAR atau fungsi CAST untuk mencapai penukaran untuk data Boolean, kita boleh menggunakan ungkapan CASE untuk mencapai penukaran.
Atas ialah kandungan terperinci oracle menukar kepada rentetan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!