Создать представление в MySQL из двух таблиц
Формулировка задачи:
У меня есть таблица, которая используется, для авторизации пользователей на почтовом сервере (используется связка Postfix и Dovecot).
Мне нужно создать таблицу, с двумя колонками. В одной колонке будет электронный адрес, который конкатенируется из user_name и domain_name из предыдущей таблицы. А в другой колонке будет просто адрес, с названием removed@mail.ru. Как конкатенировать user_name и domain_name ясно, все это делается с помощью инструмента представление в MYSQL:
Но вот как добавить к этому представление колонку в которой будет адрес removed@mail.ru ? Как я понимаю необходимо создать таблицу с одной колонкой и этим единственным значением. Просто как тогда создать представление из двух таблиц ? Что бы оно брало из одной removed@mail.ru и ставило его в одну колонку, а из другой брало user_name и domain_name и конкатенировало их ? Спасибо если кто откликнется.
+-------------+------------------+-------------------+------------------+------+------+---------------------------------------+--------+---------+---------------------------+ | user_name | domain_name | passwd | pwd_hash | uid | gid | mailbox_basepath | enable | quota | desc_rec | +-------------+------------------+-------------------+------------------+------+------+---------------------------------------+--------+---------+---------------------------+ | logistic | piduna.pp.ua | loG-1990M | _no_hash_passwd_ | 2000 | 2000 | /home/maildir/piduna.pp.ua/ | 1 | 2048000 | box for logistic | | 1c | piduna.pp.ua | 1c_user_1c | _no_hash_passwd_ | 2000 | 2000 | /home/maildir/piduna.pp.ua | 1 | 2048000 | Denisyuk V.V. | | admin | piduna.pp.ua | AAddMmM1N | _no_hash_passwd_ | 2000 | 2000 | /home/maildir/piduna.pp.ua | 1 | 2048000 | Admin | | al.service | piduna.pp.ua | Alumo_Serv4321 | _no_hash_passwd_ | 2000 | 2000 | /home/maildir/piduna.pp.ua | 1 | 2048000 | Alumo Service |
CREATE VIEW `forwardings_all_view` AS select lcase(concat(`users`.`user_name`,'@',`users`.`domain_name`)) AS `email_fqn` from `users` where (`users`.`enable` = 1)
Решение задачи: «Создать представление в MySQL из двух таблиц»
textual
Листинг программы
SELECT fld1, 'ABCD' AS Addr FROM tab1
Объяснение кода листинга программы
fld1
- это название переменной, которая содержит значения из таблицыtab1
.'ABCD'
- это значение переменной, которое будет отображаться как адрес в результирующем наборе данных.tab1
- это название таблицы, из которой берутся данные.fld1
и'ABCD'
- это единственные два элемента, которые участвуют в запросе.- Запрос выполняется на сервере баз данных MySQL.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д