Rumah >pangkalan data >tutorial mysql >Bagaimana untuk mengekstrak perkataan kedua dari rentetan MySQL menggunakan fungsi rentetan?

Bagaimana untuk mengekstrak perkataan kedua dari rentetan MySQL menggunakan fungsi rentetan?

Barbara Streisand
Barbara Streisandasal
2024-11-30 19:33:20813semak imbas

How to Extract the Second Word from a MySQL String Using String Functions?

Mengekstrak Perkataan dan Mengira Kejadian dalam Rentetan MySQL

Soalan:

Anda mencari MySQL pertanyaan serupa seperti berikut:

select <second word in text> word, count(*) from table group by word;

Adakah a sintaks untuk mengekstrak teks daripada ungkapan menggunakan ungkapan biasa dalam MySQL?

Jawapan:

Semasa mengekstrak padanan regex secara langsung tidak disokong dalam fungsi MySQL lalai, seperti yang disebut oleh mc0e, terdapat ialah penyelesaian untuk mengekstrak perkataan tertentu dalam rentetan menggunakan gabungan rentetan fungsi:

SUBSTRING(
  sentence,
  LOCATE(' ', sentence) + CHAR_LENGTH(' '),
  LOCATE(' ', sentence,
  ( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )
)

Penggunaan:

Untuk mengekstrak perkataan kedua daripada rentetan, anda boleh menggunakan pertanyaan berikut:

SELECT SUBSTRING(
  sentence,
  LOCATE(' ', sentence) + CHAR_LENGTH(' '),
  LOCATE(' ', sentence,
  ( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )
) as string
FROM (SELECT 'THIS IS A TEST' AS sentence) temp

Ini akan mengembalikan perkataan "IS" sebagai output.

Nota:

Jika mengekstrak padanan regex adalah keperluan berulang, pertimbangkan untuk memproses pasca keputusan pada klien atau memasang sambungan MySQL yang menyokong pengekstrakan regex.

Atas ialah kandungan terperinci Bagaimana untuk mengekstrak perkataan kedua dari rentetan MySQL menggunakan fungsi rentetan?. 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