Anda mencari *
pada steroid. Sayangnya tidak ada fungsi seperti itu di SQL
.
Solusi 1:
Gunakan kekuatan pemilihan blok di editor teks favorit Anda (vim,atom,...). Tempatkan setiap kolom di baris baru. Blok pilihan untuk menulis AS
dan awalan tabel. Kemudian blokir seleksi dan salin nama kolom.
Solusi 2:
Buat daftar pilihan menggunakan INFORMATION_SCHEMA.COLUMNS
:
SELECT
string_agg(FORMAT('%s.%s AS %s_%s', "table_name",
column_name,"table_name", column_name), ', ')
FROM information_schema.columns
WHERE "table_name" IN ('products', 'taxes', 'categories');
Anda dapat menggunakan E',\n'
untuk menempatkan setiap kolom di baris baru.
Keluaran:
╔════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗
║ string_agg ║
╠════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╣
║ products.id AS products_id, products.name AS products_name, taxes.id AS taxes_id, taxes.name AS taxes_name, categories.id AS categories_id, categories.name AS categories_name ║
╚════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝