Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание временной таблцы 
:(
    Опции темы
s_a_s_h_a
Дата 10.1.2005, 13:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 261
Регистрация: 20.7.2004
Где: Петрозаводск

Репутация: нет
Всего: 1



У меня есть таблицы одинаковой структуры без ключей, мне надо получить временную таблицу, являющейся объединением этих таблиц (все строки из всех таблиц должны быть в новой таблице аналогичной структуры).
Какой запрос для этого нужен?
PM MAIL   Вверх
Наставник
Дата 10.1.2005, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 327
Регистрация: 4.11.2004

Репутация: 1
Всего: 15



1. Если структура таблицы №1 (table1) совпадает со структурой таблицы №2 (table2), и при этом название столбцов в каждой таблице разные, то с помощью этого запроса будет получен нужный результат
Код

CREATE TEMPORARY TABLE temp_table SELECT * FROM table1, table2;

2. Если структура таблицы №1 совпадает со структурой таблицы №2, и при этом название столбцов в каждой таблице СОВПАДАЮТ, то с помощью этого запроса будет получен нужный результат
// допустим, что в каждой таблице по 2 столбца
Код

CREATE TEMPORARY TABLE temp_table SELECT table1.id AS id1, table2.id AS id2,
table1.name AS name1, table2.name AS name2 FROM table1, table2;


Это сообщение отредактировал(а) Наставник - 10.1.2005, 14:23


--------------------
Богатство языка определяет широту мысли
Персональный сайт >>
PM MAIL WWW   Вверх
s_a_s_h_a
Дата 10.1.2005, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 261
Регистрация: 20.7.2004
Где: Петрозаводск

Репутация: нет
Всего: 1



Спасибо, за ответ. Но мне нужен другой результат.
Пример:
таблица t1 (col1 int,col2 text); = 40 строк
таблица t2 (col1 int,col2 text); = 50 строк
(структура полностью идентична)

Надо получить
temp_table (col1 int,col2 text); = 90 строк
PM MAIL   Вверх
Наставник
Дата 10.1.2005, 21:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 327
Регистрация: 4.11.2004

Репутация: 1
Всего: 15



Тогда попробуй сделать так.

Код

CREATE TEMPORARY TABLE temp_table (col1 int,col2 text);
INSERT INTO temp_table SELECT * FROM t1;
INSERT INTO temp_table SELECT * FROM t2;

Вроде должно работать
Проверь.
Код

SELECT * FROM temp_table;

Успехов.



--------------------
Богатство языка определяет широту мысли
Персональный сайт >>
PM MAIL WWW   Вверх
s_a_s_h_a
Дата 11.1.2005, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 261
Регистрация: 20.7.2004
Где: Петрозаводск

Репутация: нет
Всего: 1



Спасибо. Действительно, всё просто, а я хотел было уже таблицы типа MERGE использовать.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0433 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.