Rumah > pangkalan data > tutorial mysql > Apakah perbezaan antara REGEXP MySQL dan LIKE?

Apakah perbezaan antara REGEXP MySQL dan LIKE?

WBOY
Lepaskan: 2023-05-30 13:58:06
ke hadapan
2299 orang telah melayarinya

1. Perbezaan dalam kandungan yang sepadan
LIKE memerlukan keseluruhan data untuk dipadankan Dengan Suka, semua kandungan medan ini mesti memenuhi syarat

REGEXP sahaja bahagian Padanan sudah memadai, asalkan mana-mana satu serpihan berpuas hati.

2. Perbezaan dalam kedudukan yang sepadan

LIKE sepadan dengan keseluruhan lajur Jika teks yang dipadankan muncul dalam nilai lajur, LIKE tidak akan menemuinya dikembalikan (melainkan jika kad bebas digunakan); nilai lajur (kesan yang sama seperti LIKE).

3. Perbezaan dalam data yang dikembalikan oleh penyata SQL

LIKE padanan: pernyataan SQL ini tidak akan mengembalikan data

REGEXP padanan: pernyataan SQL ini akan mengembalikan Satu baris data;

4 Perbezaan kelajuan

Terdapat jadual dengan lebih daripada 100,000 contoh lajur tertentu data adalah seperti berikut:

100000-200000-300001
100000-200000-300002
100000-200001-300003
100000-200001-300004
100000-200002-300005
当查询数据中含有 200001 时,
用LIKE 时sql:colName LIKE'%200001 %' ,用时4秒左右
用正则时sql:colName REGEXP '^.*200001 -.*$',用时2秒左右
Salin selepas log masuk

Atas ialah kandungan terperinci Apakah perbezaan antara REGEXP MySQL dan LIKE?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
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