Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Цикл Insert
 
 автор: VL   (22.10.2009 в 09:39)   письмо автору
 
 

В самом MYSQL хоче из одной таблицы БД_1 перенести данные в другую ТАБЛИЦУ БД_2 с маленьким измением.
То есть по идеи я вот что хотел:

INSERT INTO DB_1.magazine_number VALUES
(NULL,"SELECT number FROM DB2.numbers",(SELECT UNIX_TIMESTAMP(date) FROM vladnews.numbers),1);

Но выдало ошибку что subquery returns more than 1row. Что логично.
Как это зациклить.
Или может есть способ проще

  Ответить  
 
 автор: psychomc   (22.10.2009 в 10:28)   письмо автору
 
   для: VL   (22.10.2009 в 09:39)
 

может лучше в phpmyadmin заюзать экспорт как sql запрос и просто потом поменять название таблицы и запустить этот запрос?

  Ответить  
 
 автор: VL   (22.10.2009 в 10:32)   письмо автору
 
   для: psychomc   (22.10.2009 в 10:28)
 

У таблиц еще разная структура. Есть тока два общих поля.
Одно из которых в старой( Дата в формате YYYY-MM-DD) я хожу преобразовать в метку времени и уже занести в новую.

  Ответить  
 
 автор: Trianon   (22.10.2009 в 11:26)   письмо автору
 
   для: VL   (22.10.2009 в 10:32)
 

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

  Ответить  
 
 автор: cheops   (22.10.2009 в 12:14)   письмо автору
 
   для: VL   (22.10.2009 в 09:39)
 

Такие вещи делают одним многотабличным SELECT-ом.

  Ответить  
 
 автор: VL   (22.10.2009 в 14:32)   письмо автору
 
   для: cheops   (22.10.2009 в 12:14)
 

Старая таблица

id | number | date | status | info | author
------------------------------------
1 | 2512 | 2009-20-10 | 1
2 | 2512 | 2009-22-11 | 5

Важны мне столбы number и date остальные не нужны и писать и я их нестал

Новая

id | number | date_pub | status
------------------------------------
1 | 2512 | 1233333000 | 1
2 | 2512 | 1233333000 | 5

Грубо говоря .Еще я хочу преобразовать дату в юникс время сразу.
Хочу сделать это запросом не принебрегая к php

INSERT INTO DB_1.magazine_number VALUES
(NULL,"SELECT number FROM DB2.numbers  LIMIT 1  ",(SELECT UNIX_TIMESTAMP(date) FROM vladnews.numbers LIMIT 1),1);

Но это выберет одну строку всего.
А как прогнать все данные их там около 5000.
Думаю суть ясна.

  Ответить  
 
 автор: Trianon   (22.10.2009 в 14:35)   письмо автору
 
   для: VL   (22.10.2009 в 14:32)
 

INSERT 
   INTO `newtable` (`id`, `number`, `date_pub`, `status`) 
   SELECT `id`, `number`, UNIX_TIMESTAMP(`date`), `status` 
      FROM `old_table`

  Ответить  
 
 автор: VL   (23.10.2009 в 03:34)   письмо автору
 
   для: Trianon   (22.10.2009 в 14:35)
 

Спасибо

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования