Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Memilih Data daripada Lajur dengan Awalan Serupa dalam Pangkalan Data SQL?

Bagaimanakah Saya Boleh Memilih Data daripada Lajur dengan Awalan Serupa dalam Pangkalan Data SQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-03 12:16:29806semak imbas

How Can I Select Data from Columns with Similar Prefixes in a SQL Database?

Mengekstrak Data daripada Lajur dengan Awalan Serupa

Oleh kerana pengguna pangkalan data sering menemui jadual dengan banyak lajur berkongsi konvensyen penamaan yang serupa, mengekstrak data khusus berdasarkan awalan ini boleh mencabar. Pertimbangkan jadual dengan lajur seperti "Nama_Sayuran," "Nama_Buah" dan "Nama_Daging."

Dalam cuba memilih semua maklumat yang berkaitan dengan kumpulan makanan tertentu, seorang pengguna mencuba:

<code class="sql">$Food = "Vegetable";
mysql_query("SELECT `" . $Food . "%` FROM `Foods`");</code>

Walau bagaimanapun, pertanyaan ini terbukti tidak berkesan. Untuk menangani isu ini, adalah perlu untuk membina pertanyaan SQL secara dinamik berdasarkan awalan yang dikehendaki.

Penjanaan Pertanyaan SQL Dinamik

Untuk mendapatkan semula lajur yang dikehendaki, ikuti ini langkah:

  1. Ekstrak Nama Lajur: Jalankan pernyataan SQL berikut untuk mendapatkan semula nama semua lajur yang bermula dengan awalan yang ditentukan:
<code class="sql">SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Foods'
    AND table_schema = 'YourDB'
    AND column_name LIKE 'Vegetable%'</code>
  1. Bina Rentetan Pertanyaan: Berdasarkan nama lajur yang diambil, bina pertanyaan SELECT secara dinamik, menggunakan nama jadual dan senarai nama lajur yang sesuai.

Contoh:

Anggapkan nama lajur yang diambil ialah "Nama_Sayuran" dan "Jenis_Sayuran." Pertanyaan berikut akan memilih data daripada lajur ini:

<code class="sql">SELECT Vegetable_Name, Vegetable_Type
FROM Foods</code>

Pendekatan ini membolehkan pengambilan data yang cekap dan disasarkan, walaupun untuk jadual dengan berbilang lajur berkongsi awalan yang serupa.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memilih Data daripada Lajur dengan Awalan Serupa dalam Pangkalan Data SQL?. 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