bash.org:

Следуй за мной:

twiby

Адовый чад кутежа и трэш в комплекте

MySQL CREATE VIEW - создать промежуточную таблицу

Пришло на ум: 7 февраля 2011


Как создать промежуточную таблицу в MySQL?
Совсем недавно столкнулся с проблемой построения дерева взятого из 2 таблиц - "родительская" ветка с одной таблицы, ветка "детей" - с другой.
Выход оказался простой, хотя не столь очевидный - просто создаем промежуточную VIEW таблицу, добавляя к ид префикс с_ для родителя и p_ для ребенка (в моем случае)
CREATE VIEW temp AS SELECT CONCAT('c','_',id ) AS ID,
 company_name AS name,  'customer' AS parent
FROM customers
UNION SELECT CONCAT(  'p',  '_', id ) AS ID, name,
CONCAT(  'c',  '_', parent ) FROM customers_person

Обновлено 11.11.2011

Поскольку много народа заходит на эту старую страницу, я решил сделать небольшой UPDATE информации

MySQL CREATE VIEW - это создание таблицы представления, иными словами, вы делаете "таблицу" из результатов запроса, которые формируются во время обращения к этой самой таблице. Представьте себе подзапрос, который сохранен как таблица - это собственно и есть View.

На самом деле, за 1.5 года, которые прошли с момента написания оригинальной заметки, я так и не нашел хорошего применения VIEW таблицам, возможно таким образом можно как-то соптимизировать "тяжелые запросы", но я не администратор баз данных и не владею данным вопросом :(

Если мой пост помог вам сэкономить пару часов времени или показался полезным, думаю не лишним будет показать его друзьям через социальные сети или упомянуть в своем блоге.


Ваше мнение:

Имя
   другие статьи с тегом MySQL

Случайная мысль:

Любовь - это восхитительный обман, на который человек соглашается по доброй воле.
Пушкин А.С.
drcreazy © 2008-2012 all rights reserved