Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Волшебство с * и двумя таблицами. [MySQL]


Дмитрий С ©   (2011-02-08 10:00:00) 

Есть две таблицы, есть какой-нить волшебный способ извлечь все столбики с обеих таблиц с перфиксами?

Например:

SELECT a.* AS a_, b.* AS b_ FROM a LEFT JOIN b ON <...> ...

А результат:
a_id, a_name, ..., b_id, b_info, ....


DiamondShark   (2011-02-17 11:10:00) [1]


> Есть две таблицы, есть какой-нить волшебный способ извлечь
> все столбики с обеих таблиц с перфиксами?

А зачем?


sniknik   (2011-02-08 19:23:00) [2]

на производительности все "играет"... явное указание в сторону улучшения, "волшебство" в сторону ухудшения...


Димка На   (2011-02-08 19:17:00) [3]

Первый вариант мне по душе. Можно додумать свой синтаксис и перед запросом автоматически вставить список колонок, например :
Select /**table a, prefix a_*/, .....
Это не волшебство конечно, но мне подойдет.

Четвертый не пойдет, т к порой "прилепляю" одну таблицу несколько раз, хотя тут можно с view-ами придумать вариант, главное чтобы на производительности не сыграло.


Jeer   (2011-02-08 16:30:00) [4]


> есть какой-нить волшебный способ


Использовать в качестве префикса имя таблицы ( при создании DB).
Потрудись уж.


sniknik   (2011-02-08 13:14:00) [5]

> А вдруг??? :)))
только так

SELECT a.id as a_id, a.name as a_name <...>,b.id as b_id, b.name as b_name <...>,  FROM a LEFT JOIN b ON <...>

а вообще простое

SELECT * FROM a LEFT JOIN b ON <...> ...
"слепит" новые имена для повторений, т.что незачем "париться"


BoxTer   (2011-02-08 12:34:00) [6]

А вдруг??? :)))
SELECT id as a_id, name as a_name <...> FROM a LEFT JOIN b ON  


clickmaker   (2011-02-08 11:02:00) [7]

можно получить список колонок из INFORMATION_SCHEMA.COLUMNS, потом в цикле слепить запрос и через EXEC выполнить


Наверх

Титульная страница Поиск, карта сайта Написать письмо