Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menyoal Pangkalan Data Mengabaikan Ruang dalam Nilai Medan?

Bagaimanakah Saya Boleh Menyoal Pangkalan Data Mengabaikan Ruang dalam Nilai Medan?

Susan Sarandon
Susan Sarandonasal
2024-12-25 10:59:22209semak imbas

How Can I Query a Database Ignoring Spaces in Field Values?

Menyoal dengan Space-Ignorance

Tugas mencari entri pangkalan data sambil mengabaikan ruang dalam nilai medan boleh dicapai dengan menggunakan teknik mudah. Dalam senario ini, matlamatnya ialah untuk mengenal pasti entri yang sepadan dengan "John Bob Jones" dengan atau tanpa ruang.

Penyelesaian Menggunakan Penggantian Ruang

Untuk mencapai ini, pertanyaan boleh dibina yang menggantikan semua ruang dalam kedua-dua nilai medan dan kriteria carian dengan rentetan kosong. Ini pada asasnya menghapuskan kesan ruang dalam perbandingan. Pertanyaan yang terhasil akan menyerupai:

SELECT * FROM mytable 
    WHERE REPLACE(username, ' ', '') = REPLACE("John Bob Jones", ' ', '')

Dengan menggunakan fungsi REPLACE(), ruang dialih keluar daripada kedua-dua nilai medan dan kriteria carian. Akibatnya, pertanyaan akan mengenal pasti semua entri yang sepadan dengan "John Bob Jones" tanpa mengira jarak yang digunakan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyoal Pangkalan Data Mengabaikan Ruang dalam Nilai Medan?. 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