Coba ini:
SET @schema = 'test_db';
SET @table = 'test';
SELECT CONCAT(
'SELECT CONCAT(TRIM(TRAILING ', QUOTE(','), ' FROM CONCAT(', QUOTE('{'), ',',
GROUP_CONCAT(QUOTE('"'), ',', QUOTE(COLUMN_NAME), ',',
QUOTE('"'), ',', QUOTE(':'), ',', QUOTE('"'), ',', COLUMN_NAME, ',',
QUOTE('"'),',', QUOTE(',')),
')), ''}'') FROM ', @table
)
INTO @qry FROM
(SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS c
WHERE TABLE_SCHEMA = @schema AND TABLE_NAME = @table) t;
SELECT @qry;
PREPARE stmt FROM @qry;
EXECUTE stmt;
Kueri di atas menghasilkan data tabel dalam format JSON. Dengan menggunakan kueri, Anda dapat menyiapkan prosedur tersimpan dengan mengambil database dan nama tabel sebagai parameter input dan mengisi data Anda. Jika Anda ingin mengecualikan beberapa kolom dalam tabel, cukup ubah kueri yang memilih data dari INFORMATION_SCHEMA
database seperti SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS c WHERE TABLE_SCHEMA = @schema AND TABLE_NAME = @table AND COLUMN_NAME NOT IN (**columns to exclude**)
.