Rumah > Artikel > pangkalan data > Bagaimana untuk membuat pertanyaan kes dalam MySQL
Dalam MySQL, pernyataan pertanyaan adalah operasi yang sangat asas dan penting. Pernyataan pertanyaan membolehkan kami mengekstrak data yang kami perlukan daripada pangkalan data dan mengisih serta menapisnya mengikut keperluan kami. Walau bagaimanapun, apabila benar-benar menggunakan MySQL untuk pertanyaan data, kami sering menghadapi banyak masalah dan masalah, termasuk isu penggunaan huruf besar. Kes sangat sensitif dalam pernyataan pertanyaan MySQL, jadi kita perlu memahami cara melaksanakan pertanyaan kes dengan betul dalam MySQL.
Masalah kes dalam MySQL
Masalah kes dalam MySQL boleh dikesan kembali kepada reka bentuk pangkalan data. Dalam MySQL, pengecam (seperti nama jadual, nama lajur, nama pembolehubah, dll.) adalah sensitif huruf besar-kecil. Ini boleh menyebabkan kita banyak masalah dalam beberapa kes.
Contohnya, apabila kami mencipta jadual, kami menentukan nama jadual pelajar Jika kami kemudian menggunakan pernyataan SELECT untuk menanyakan jadual, kami tidak boleh menggunakan Pelajar atau PELAJAR dan borang kes yang serupa, jika tidak pangkalan data MySQL. akan mengembalikan mesej ralat.
Cara untuk menanyakan huruf besar dan kecil dalam MySQL
Apabila membuat pertanyaan, gunakan kata kunci BINARI untuk menjadikan MySQL tidak dapat dibezakan Atas dan huruf kecil. Sebagai contoh, kita boleh menggunakan pernyataan berikut untuk menanyakan jadual pelajar:
SELECT * FROM student WHERE BINARY name = 'Tom';
Dengan cara ini, MySQL akan mengembalikan hasil yang betul tanpa mengira kes nama tersebut. Walaupun pendekatan ini boleh menyelesaikan masalah, menggunakan kata kunci BINARI dalam set data yang agak besar boleh menjejaskan prestasi pertanyaan, jadi penyelesaian kepada masalah itu tidak elegan.
Cara lain untuk menyelesaikan masalah kes semasa membuat pertanyaan ialah menggunakan fungsi LOWER MySQL. Fungsi LOWER menukar rentetan kepada huruf kecil. Sebagai contoh, kita boleh menggunakan pernyataan berikut untuk menanyakan jadual pelajar:
SELECT * FROM student WHERE LOWER(name) = 'tom';
Dengan cara ini, MySQL akan menukar semua rentetan dalam medan nama kepada huruf kecil, dan kemudian membandingkannya dengan 'tom'. Menggunakan pendekatan ini, kita boleh mengelakkan kesan prestasi pertanyaan menggunakan kata kunci BINARI.
Ringkasan
Isu kes dalam MySQL adalah isu yang agak mudah tetapi sering diabaikan. Pada premis untuk memastikan ketepatan dan kecekapan pertanyaan, kita harus cuba mengelak daripada menggunakan kata kunci BINARI dan cuba menggunakan kaedah seperti fungsi LOWER untuk menyelesaikan masalah kes.
Dalam proses pembangunan sebenar, mudah untuk kita mengabaikan masalah kes dalam MySQL, yang mungkin membawa kepada beberapa hasil pertanyaan yang salah. Oleh itu, kita perlu memahami dengan teliti peraturan kes dalam MySQL dan melaksanakan operasi pertanyaan yang betul berdasarkan situasi sebenar.
Atas ialah kandungan terperinci Bagaimana untuk membuat pertanyaan kes dalam MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!