Rumah > pangkalan data > Oracle > teks badan

Bagaimanakah Oracle menentukan sama ada data adalah jenis angka?

WBOY
Lepaskan: 2022-04-07 11:27:58
asal
22529 orang telah melayarinya

Kaedah: 1. Gunakan "trim(translate(column,'0123456789',' ')) is NULL;" untuk menentukan sama ada data ialah nombor 2. Gunakan "regexp_like(column,'^[ 0-9 ] [0-9]$');" Tentukan sama ada data ialah nombor.

Bagaimanakah Oracle menentukan sama ada data adalah jenis angka?

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

Bagaimana oracle menentukan sama ada data adalah jenis angka?

pilih*daripada nama jadual di mana Dalam perkembangan biasa kita, kita mungkin menghadapi masalah sedemikian, iaitu untuk menentukan sama ada lajur tertentu terdiri sepenuhnya daripada nombor. Kita semua tahu bahawa Oracle tidak memberikan kita fungsi siap sedia, jadi berdasarkan pengalaman saya, saya telah meringkaskan dua kaedah yang berkesan (nama lajur: lajur, nama jadual: jadual):

1. Gunakan fungsi terjemah trim:

Kodnya adalah seperti berikut:

select * from table where trim(translate(column,'0123456789',' ')) is NULL;
Salin selepas log masuk

Apa yang perlu diperhatikan di sini ialah parameter ketiga daripada fungsi terjemah ialah ruang, bukan '', kerana jika parameter ketiga terjemah kosong, ia akan sentiasa kembali '', yang tidak dapat mencapai tujuan menapis nombor tulen.

Dengan cara ini, semua nombor ditukar kepada ruang Jika semuanya terdiri daripada nombor, maka apabila dipangkas, ia secara semula jadi akan kosong, mencapai matlamat di atas. Sudah tentu, jika anda ingin mengecualikan item kosong, anda boleh menulis seperti ini:

Kodnya adalah seperti berikut:

select * from table where trim(translate(nvl(column,'x'),'0123456789',' ')) is NULL;--x 表示任何'0-9'以外的字符。
Salin selepas log masuk

Gunakan fungsi regexp_like:

Kodnya adalah seperti berikut :

select * from table where regexp_like(column,'^[0-9]+[0-9]$');
Salin selepas log masuk

Perlu diperhatikan di sini bahawa fungsi regexp_like tidak tersedia dalam semua versi Oracle.

Regexp_like ialah salah satu daripada empat fungsi yang Oracle menyokong ungkapan biasa: regexp_like, regexp_replace, regexp_instr, regexp_substr Untuk mendapatkan maklumat yang lebih terperinci dalam hal ini, sila beri perhatian kepada dokumen yang berkaitan.

Tutorial yang disyorkan: "Tutorial Video Oracle"

Atas ialah kandungan terperinci Bagaimanakah Oracle menentukan sama ada data adalah jenis angka?. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!