Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Mencari Nama Pengguna Mengabaikan Variasi Ruang Putih dalam SQL?

Bagaimanakah Saya Boleh Mencari Nama Pengguna Mengabaikan Variasi Ruang Putih dalam SQL?

Patricia Arquette
Lepaskan: 2024-12-24 00:30:30
asal
717 orang telah melayarinya

How Can I Search for Usernames Ignoring Whitespace Variations in SQL?

Mencari Nama Pengguna Walaupun Variasi Ruang Putih

Apabila mencari nama pengguna, selalunya wajar untuk mengabaikan sebarang ruang kosong dalam medan. Sebagai contoh, dalam pangkalan data dengan pengguna "JohnBobJones," "John Bob Jones" dan "JohnBobJones," adalah munasabah untuk mengharapkan carian untuk "John Bob Jones" untuk mendapatkan ketiga-tiga entri.

Pertanyaan SQL dengan Normalisasi Ruang Putih

Untuk mencapai carian agnostik ruang putih ini, pertanyaan SQL berikut boleh used:

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

Pertanyaan ini menggunakan fungsi REPLACE() untuk mengalih keluar semua aksara ruang putih daripada kedua-dua medan nama pengguna dan rentetan carian. Dengan membandingkan nilai yang dinormalkan, ia memastikan kehadiran atau ketiadaan ruang putih tidak menjejaskan hasil carian.

Pelaksanaan dalam PHP atau Python

Pertanyaan SQL boleh dilaksanakan daripada PHP atau Python menggunakan penyambung pangkalan data yang sesuai. Berikut ialah contoh PHP:

$db = new mysqli('localhost', 'user', 'password', 'database');
$stmt = $db->prepare("SELECT * FROM mytable 
    WHERE REPLACE(username, ' ', '') = REPLACE('John Bob Jones', ' ', '')");
$stmt->execute();
$result = $stmt->get_result();
Salin selepas log masuk

Dan contoh Python:

import mysql.connector

db = mysql.connector.connect(
    host='localhost',
    user='user',
    password='password',
    database='database'
)

cursor = db.cursor()
cursor.execute("SELECT * FROM mytable 
    WHERE REPLACE(username, ' ', '') = REPLACE('John Bob Jones', ' ', '')")
result = cursor.fetchall()
Salin selepas log masuk

Coretan kod ini mewujudkan sambungan pangkalan data, laksanakan pertanyaan SQL dengan nilai yang dinormalkan dan dapatkan semula entri yang sepadan .

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencari Nama Pengguna Mengabaikan Variasi Ruang Putih dalam 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