Dalam senario di mana struktur jadual tidak diketahui atau tertakluk kepada perubahan, memilih lajur tertentu menjadi mencabar. Tutorial ini menunjukkan kaedah untuk mendapatkan semula nama lajur secara dinamik dan membina pertanyaan untuk memilih lajur yang diingini.
Untuk mengambil nama lajur secara dinamik, kami boleh menggabungkan pertanyaan berikut:
Satu pendekatan berpotensi melibatkan penyertaan pertanyaan ini dan menggunakan fungsi GROUP_CONCAT() untuk menggabungkan lajur yang dikehendaki nama:
SELECT CONCAT('SELECT ', GROUP_CONCAT(c.COLUMN_NAME), ' FROM table_name;') INTO @query FROM information_schema.columns c WHERE c.TABLE_NAME = 'table_name' AND c.COLUMN_NAME LIKE 'prefix%';
Pertanyaan ini menghasilkan rentetan yang mengandungi PILIH pernyataan yang termasuk lajur tertentu yang sepadan dengan kriteria yang ditentukan.
Setelah rentetan pertanyaan dibina, kami boleh menyediakan dan melaksanakannya:
PREPARE stmt FROM @query; EXECUTE stmt;
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memilih Lajur Secara Dinamik dalam Pertanyaan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!