SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 06.10.2009 12:24:23

oleg999
Завсегдатай
Зарегистрирован: 19.08.2009
Сообщений: 48

как создать таблицу из запроса?

Добрый день, всем! У  меня вопрос. Как можно создать новую таблицу из результирующего запроса на Mysql .
т.е имеется запрос:
SELECT  n.number as 'Номер рейса' , a.name as 'Тип самолёта', dir.direction as 'Направление полёта', t. departure_time as 'Время вылета', t.arrival_time as 'Время прибытия', t.flight_time as 'Время в полёте', d.`day` as 'Дни недели'
FROM timetable t JOIN number n JOIN aircraft a JOIN direction dir JOIN `day` d
ON (t.numberID=n.numberID AND t.aircraftID=a.aircraftID AND t.directionID=dir.directionID AND t.dayID=d.dayID);
Мне необходимо создать таблицу из следующих поле а потом наполнить резултатом запроса...
Как можно это сделать?

Неактивен

 

#2 06.10.2009 12:54:07

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: как создать таблицу из запроса?

CREATE TABLE .. SELECT...
сразу создаст заполненную таблицу.

Неактивен

 

#3 06.10.2009 13:10:41

oleg999
Завсегдатай
Зарегистрирован: 19.08.2009
Сообщений: 48

Re: как создать таблицу из запроса?

всё хорошо только:
mysql> describe newdir;
+--------------------+--------------+------+-----+---------+-------+
| Field              | Type         | Null | Key | Default | Extra |
+--------------------+--------------+------+-----+---------+-------+
| Номер рейса        | varchar(60)  | NO   |     | NULL    |       |
| Тип самолёта       | varchar(60)  | NO   |     | NULL    |       |
| Направление полёта | varchar(100) | NO   |     | NULL    |       |
| Время вылета       | varchar(30)  | NO   |     | NULL    |       |
| Время прибытия     | varchar(30)  | NO   |     | NULL    |       |
| Время в полёте     | varchar(30)  | NO   |     | NULL    |       |
| Дни недели         | varchar(60)  | NO   |     | NULL    |       |
+--------------------+--------------+------+-----+---------+-------+
7 rows in set (0.02 sec)

тип таблиц не сохроняеться, как этого избежать?

Неактивен

 

#4 06.10.2009 13:26:46

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: как создать таблицу из запроса?

Дело в том, что такой вариант создания таблицы копирует только названия столбцов и типы данных, но нет специфических атрибутов (например, auto_increment), индексов, не сохраняет тип хранилища.

Единственный вариант - выполнять следующей командой ALTER TABLE
Подробнее см. http://webew.ru/articles/2125.webew

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson