Вие търсите *
на стероид. За съжаление няма такава функционалност в SQL
.
Заобиколно решение 1:
Използвайте силата на избора на блок в любимия си текстов редактор (vim, atom,...). Поставете всяка колона в нов ред. Блокирайте избора, за да напишете КАТО
и префикс на таблица. След това блокирайте избора и копирайте имената на колоните.
Заобиколно решение 2:
Генерирайте списък за избор с помощта на INFORMATION_SCHEMA.COLUMNS
:
SELECT string_agg(FORMAT('%s.%s AS %s_%s', "table_name", column_name,"table_name", column_name), ', ')FROM information_schema.columnsWHERE "table_name" IN ( „продукти“, „данъци“, „категории“);
Можете да използвате E',\n'
за да поставите всяка колона на нов ред.
Изход:
<предварителен код>╔═════════════════════════════════════════ ══════════════════════════════════════════════════ ══════════════════════════════════════════════════ ═════════════════════════════════╗║ String_agg ║╠════════════ ══════════════════════════════════════════════════ ══════════════════════════════════════════════════ ══════════════════════════════════════════════════ ══════════════╣║ products.id AS products_id, products.name AS products_name, taxes.id AS taxes_id, taxes.name AS taxes_name, category.id AS category_id, category.name AS categories_name ║╚═══════════════════════════════════════════════ ══════════════════════════════════════════════════ ══════════════════════════════════════════════════ ═════════════════════════════╝