Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mengira Kejadian Substring dalam Medan VARCHAR Menggunakan SQL?

Bagaimana untuk Mengira Kejadian Substring dalam Medan VARCHAR Menggunakan SQL?

Susan Sarandon
Lepaskan: 2025-01-19 22:09:19
asal
684 orang telah melayarinya

How to Count Substring Occurrences in VARCHAR Fields Using SQL?

Mengira Kejadian Subrentetan dengan Cekap dalam Medan SQL VARCHAR

Tugas pangkalan data selalunya melibatkan menganalisis data teks dalam medan VARCHAR. Keperluan yang kerap adalah untuk menentukan berapa kali subrentetan tertentu muncul dalam setiap medan. Sebagai contoh, pertimbangkan jadual menyimpan penerangan produk; anda mungkin mahu mengira kejadian kata kunci tertentu dalam setiap perihalan.

SQL menyediakan penyelesaian untuk ini. Pertanyaan berikut menunjukkan cara mengira tika rentetan sasaran (cth., "nilai") dalam medan VARCHAR bernama description:

<code class="language-sql">SELECT 
    title,
    description,    
    ROUND( (LENGTH(description) - LENGTH(REPLACE(description, 'value', ''))) / LENGTH('value') ) AS count
FROM <table_name></code>
Salin selepas log masuk

Pertanyaan ini memanfaatkan fungsi REPLACE untuk mengalih keluar semua kejadian rentetan sasaran ("nilai"). Dengan membandingkan panjang rentetan asal dengan panjang selepas penggantian, dan membahagikan dengan panjang rentetan sasaran, kami mengira bilangan kejadian dengan tepat. Fungsi ROUND memastikan kiraan nombor bulat.

Melaksanakan pertanyaan ini pada jadual sampel menghasilkan keputusan berikut:

TITLE DESCRIPTION COUNT
test1 value blah blah value 2
test2 value test 1
test3 test test test 0
test4 valuevaluevaluevaluevalue 5

Kaedah ini menyediakan cara ringkas dan berkesan untuk mengira kejadian subrentetan terus dalam pertanyaan SQL anda.

Atas ialah kandungan terperinci Bagaimana untuk Mengira Kejadian Substring dalam Medan VARCHAR Menggunakan 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan