Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk menggunakan pernyataan SQL untuk melakukan penapisan data dan pertanyaan bersyarat dalam MySQL?

Bagaimana untuk menggunakan pernyataan SQL untuk melakukan penapisan data dan pertanyaan bersyarat dalam MySQL?

王林
王林asal
2023-12-18 11:13:181554semak imbas

Bagaimana untuk menggunakan pernyataan SQL untuk melakukan penapisan data dan pertanyaan bersyarat dalam MySQL?

Bagaimana untuk menggunakan pernyataan SQL untuk melakukan penapisan data dan pertanyaan bersyarat dalam MySQL?

MySQL, sebagai sistem pengurusan pangkalan data yang biasa digunakan, digunakan secara meluas untuk menyimpan dan mengurus sejumlah besar data. Dalam aplikasi praktikal, kita selalunya perlu menanyakan data berdasarkan syarat tertentu untuk memenuhi pelbagai keperluan. Artikel ini akan memperkenalkan cara menggunakan pernyataan SQL untuk melaksanakan penapisan data dan pertanyaan bersyarat dalam MySQL, dan memberikan contoh kod khusus.

1. Sintaks asas

Dalam MySQL, anda boleh menggunakan pernyataan SELECT untuk melakukan penapisan data dan pertanyaan bersyarat. Sintaks asas adalah seperti berikut:

SELECT column1, column2, ...
FROM table_name
WHERE condition;

Antaranya, lajur1, lajur2, ... adalah nama lajur yang akan ditanya, yang boleh menjadi nama lajur tertentu, atau kad bebas boleh digunakan untuk menanyakan semua lajur adalah nama jadual yang akan ditanya; syarat adalah syarat pertanyaan. *

2. Gunakan klausa WHERE untuk pertanyaan bersyarat

    Pertanyaan bersyarat mudah
Pertanyaan bersyarat yang paling mudah ialah menapis menggunakan operator perbandingan. Contohnya, jika kita ingin menanyakan rekod pelajar dengan markah lebih daripada 80 mata, kita boleh menggunakan kod berikut:

SELECT * 
FROM students
WHERE score > 80;

Antaranya, pelajar ialah nama jadual, markah ialah nama lajur, dan 80 ialah syarat.

    Pertanyaan berbilang syarat
Dalam aplikasi praktikal, selalunya perlu menggunakan berbilang syarat untuk pertanyaan. Pelbagai keadaan boleh disambungkan menggunakan operator logik DAN dan ATAU. Contohnya, jika kami ingin menanyakan rekod pelajar dengan markah matematik lebih daripada 80 mata dan markah bahasa Inggeris lebih daripada 70 mata, kami boleh menggunakan kod berikut:

SELECT * 
FROM students
WHERE math_score > 80 AND english_score > 70;

Antaranya, math_score dan english_score ialah nama lajur.

    Pertanyaan kabur
Pertanyaan kabur merujuk kepada pertanyaan berdasarkan keadaan kabur, biasanya menggunakan aksara kad bebas % untuk mewakili sebarang aksara. Contohnya, jika kita ingin menanyakan rekod pelajar dengan nama keluarga "Zhang", kita boleh menggunakan kod berikut:

SELECT * 
FROM students
WHERE name LIKE '张%';

di mana nama ialah nama lajur.

3. Gunakan klausa ORDER BY untuk mengisih

Dalam pertanyaan data, selalunya perlu untuk mengisih hasil pertanyaan. Anda boleh menggunakan klausa ORDER BY untuk mengisih hasil dalam susunan menaik atau menurun. Contohnya, jika kita ingin menanyakan rekod pelajar dengan markah matematik lebih daripada 80 dan mengisihnya dalam tertib menurun mengikut skor, kita boleh menggunakan kod berikut:

SELECT * 
FROM students
WHERE math_score > 80
ORDER BY math_score DESC;

Antaranya, DESC bermaksud tertib menurun dan ASC bermaksud tertib menaik.

4. Gunakan klausa LIMIT untuk pertanyaan paging

Pertanyaan paging bermaksud membahagikan dan memaparkan hasil pertanyaan mengikut bilangan halaman tertentu. Anda boleh menggunakan klausa LIMIT untuk menomborkan hasil pertanyaan. Contohnya, jika kita ingin menanyakan rekod 10 pelajar terbaik, kita boleh menggunakan kod berikut:

SELECT * 
FROM students
ORDER BY score DESC
LIMIT 10;

di mana skor ialah nama lajur dan DESC bermaksud tertib menurun.

5 Pernyataan pertanyaan lain yang biasa digunakan

Selain pernyataan pertanyaan asas di atas, MySQL juga menyediakan penyataan pertanyaan lain yang biasa digunakan, seperti pertanyaan pengagregatan, pertanyaan pengelompokan, dsb. Berikut ialah contoh untuk menanyakan purata skor dan skor maksimum bagi setiap subjek:

SELECT subject, AVG(score) AS avg_score, MAX(score) AS max_score
FROM students
GROUP BY subject;

Antaranya, subjek dan skor ialah nama lajur, AVG mewakili nilai purata, MAX mewakili nilai maksimum dan AS ialah kata kunci untuk penyalian.

Ringkasan:

Artikel ini memperkenalkan kaedah asas menggunakan pernyataan SQL untuk melaksanakan penapisan data dan pertanyaan bersyarat dalam MySQL, dan memberikan contoh kod khusus. Dengan fleksibel menggunakan pernyataan pertanyaan ini, data yang diperlukan boleh diperoleh dengan cekap daripada pangkalan data mengikut keperluan sebenar. Pada masa yang sama, pernyataan pertanyaan lain yang biasa digunakan juga diperkenalkan, dengan harapan dapat membantu pembaca.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan pernyataan SQL untuk melakukan penapisan data dan pertanyaan bersyarat dalam MySQL?. 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