Rumah >pangkalan data >tutorial mysql >Bagaimanakah saya boleh mengekstrak nombor daripada rentetan dalam SQL?

Bagaimanakah saya boleh mengekstrak nombor daripada rentetan dalam SQL?

DDD
DDDasal
2025-01-21 01:56:09382semak imbas

How Can I Extract Numbers from Strings in SQL?

Ekstrak data berangka daripada rentetan SQL

Dalam SQL, untuk mendapatkan hanya aksara angka daripada rentetan tertentu, kita boleh menggunakan Fungsi Ditentukan Pengguna (UDF). Mari selami langkah yang terlibat:

Pertama, kami mentakrifkan UDF bernama dbo.udf_GetNumeric, yang menerima parameter rentetan @strAlphaNumeric.

UDF dimulakan dengan mengisytiharkan pembolehubah @intAlpha yang menentukan kedudukan aksara bukan angka pertama dalam rentetan.

Menggunakan gelung WHILE, kami mengalih keluar aksara bukan angka secara berulang daripada rentetan sehingga hanya tinggal digit.

Akhir sekali, kami menyemak sama ada rentetan yang terhasil mengandungi sebarang aksara angka. Jika ya, kami menukarnya kepada integer dan mengembalikannya jika tidak, kami mengembalikan 0.

Untuk melaksanakan fungsi ini, gunakan sintaks berikut:

<code class="language-sql">SELECT dbo.udf_GetNumeric(column_name) 
FROM table_name</code>

Sebagai contoh, pertimbangkan rentetan input berikut:

<code>字符串1:003Preliminary Examination Plan   
字符串2:Coordination005  
字符串3:Balance1000sheet</code>

Keluaran yang dijangkakan ialah:

<code>字符串1:003
字符串2:005
字符串3:1000</code>

Dengan melaksanakan UDF ini, kami boleh mengekstrak data berangka dengan cekap daripada rentetan dalam SQL, menjadikannya lebih mudah untuk menggunakan nilai angka dalam pertanyaan.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mengekstrak nombor daripada rentetan dalam SQL?. 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