Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Mengekstrak Data Khusus daripada Rentetan Terhad dalam T-SQL?

Bagaimanakah Saya Boleh Mengekstrak Data Khusus daripada Rentetan Terhad dalam T-SQL?

DDD
Lepaskan: 2024-12-21 07:28:14
asal
434 orang telah melayarinya

How Can I Extract Specific Data from a Delimited String in T-SQL?

Memisahkan Rentetan Menggunakan Aksara Pembatas dalam T-SQL

Soalan ini menangani keperluan untuk mengekstrak maklumat khusus daripada rentetan panjang yang disimpan dalam jadual lajur. Cabarannya terletak pada membelah rentetan berdasarkan pembatas tertentu dan mengekstrak sekeping data tertentu.

Untuk mencapai ini menggunakan T-SQL, pendekatan berikut boleh digunakan:

Pertama, CHARINDEX atau fungsi PATINDEX digunakan untuk mencari kedudukan aksara pembatas ('|') dalam rentetan.

Seterusnya, fungsi STUFF digunakan untuk mencipta rentetan baharu yang merangkumi teks selepas aksara pembatas.

Akhir sekali, fungsi SUBSTRING digunakan untuk mengekstrak teks yang dikehendaki, seperti "Nama Klien" dalam contoh ini, berdasarkan kedudukan aksara pembatas dan panjang yang ditentukan bagi aksara.

Select col1, col2, LTRIM(RTRIM(SUBSTRING(
    STUFF(col3, CHARINDEX('|', col3,
    PATINDEX('%|Client Name =%', col3) + 14), 1000, ''),
    PATINDEX('%|Client Name =%', col3) + 14, 1000))) col3
from Table01
Salin selepas log masuk

Pertanyaan ini memanfaatkan fungsi CHARINDEX atau PATINDEX untuk mencari kedudukan "|" aksara dalam lajur "col3" dan kemudian mencipta rentetan baharu yang menyertakan teks selepas pembatas menggunakan fungsi STUFF. Akhir sekali, fungsi SUBSTRING digunakan untuk mengekstrak nilai "Nama Pelanggan" berdasarkan kedudukan dan panjang aksara.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengekstrak Data Khusus daripada Rentetan Terhad dalam T-SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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