|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
28.08.2011, 13:06 | #1 |
Пользователь
Регистрация: 24.06.2011
Сообщений: 80
|
временная таблица по итогам выборки
в очередной раз заплутал
есть результат выборки... $query = "SELECT a.uid, a.tip, a.name_rus, a.namera, a.namesub, b.gid, b.nas, b.new, c.kolvo_ms, c.po_dep, c.ma_form, c.po_form FROM geo_base AS a INNER JOIN geo_data as b ON b.gid=a.uid INNER JOIN geo_omsu AS c ON c.gid=a.uid WHERE ".$where." AND a.tip IN (".$IN.") ORDER BY b.nas LIMIT $kolvo"; echo $query; $result = mysql_query($query); можно ли результат выборки записать во временную таблицу? чтоб дальше с ней работать... что-то подобное вроде уже делал(( а найти и вспомнить не могу мне нужно результаты в дальнейшем группировать по 2 признакам... спасибо! |
28.08.2011, 13:10 | #2 |
Пользователь
Регистрация: 26.08.2011
Сообщений: 41
|
Создаешь новую таблицу.
Потом в цикле обрабатываешь результат выборки. Телом цикла является запрос на добавление записи в новую таблицу. |
28.08.2011, 13:22 | #3 |
Пользователь
Регистрация: 24.06.2011
Сообщений: 80
|
нельзя ли направить на путь истинный немногим более конкретно?
$sql="CREATE TABLE part-time(a.uid, a.tip, a.name_rus, a.namera, a.namesub, b.gid, b.nas, b.new, c.kolvo_ms, c.po_dep, c.ma_form, c.po_form)"; mysql_query($sql); так? потом while ($itog = mysql_fetch_row( $result)){ echo "INSERT INTO part-time(a.uid, a.tip, a.name_rus, a.namera, a.namesub, b.gid, b.nas, b.new, c.kolvo_ms, c.po_dep, c.ma_form, c.po_form) values('$itog[0]', '$itog[1]',...) } Так??? п.с. SELECT a.uid, a.tip, a.name_rus, a.namera, a.namesub, b.gid, b.nas, b.new, c.kolvo_ms, c.po_dep, c.ma_form, c.po_form FROM geo_base AS a INNER JOIN geo_data as b ON b.gid=a.uid INNER JOIN geo_omsu AS c ON c.gid=a.uid WHERE 1=1 AND b.nas > '1000' AND b.nas < '5000' AND a.tip IN (2,3,4,5) ORDER BY b.nas LIMIT 30 Fatal error: Maximum execution time of 30 seconds exceeded in Z:\home\localhost\www\pr1808\munvyb orword2.php on line 648 в чем может быть проблема? очень долго обрабатывается запрос( в БД порядка 10 таблиц по 18000 записей в каждой, по 5-15 столбцов... в запросе? вряд ли... может в типах данных? некоторые таблицы по 4.5 мб... Последний раз редактировалось Dmitry1983; 28.08.2011 в 13:26. |
28.08.2011, 13:31 | #4 |
Пользователь
Регистрация: 26.08.2011
Сообщений: 41
|
Да, типа того.
Это селект так долго обрабатывается, или ты уже инсерт добавил? |
28.08.2011, 13:39 | #5 | |
Пользователь
Регистрация: 24.06.2011
Сообщений: 80
|
Цитата:
без инсертов... это параллельные вопросы((( вот и думаю сначала инсерт сделать $query = "SELECT a.uid, a.tip, a.name_rus, a.namera, a.namesub, b.gid, b.nas, b.new, c.kolvo_ms, c.po_dep, c.ma_form, c.po_form FROM geo_base AS a INNER JOIN geo_data as b ON b.gid=a.uid INNER JOIN geo_omsu AS c ON c.gid=a.uid WHERE ".$where." AND a.tip IN (".$IN.") ORDER BY b.nas LIMIT $kolvo"; echo $query; $result = mysql_query($query); $itog=mysql_fetch_array($result); $sql22="CREATE TABLE part_time (a.uid, a.tip, a.name_rus, a.namera, a.namesub, b.gid, b.nas, b.new, c.kolvo_ms, c.po_dep, c.ma_form, c.po_form)"; mysql_query($sql22); while ($itog = mysql_fetch_row( $result)) { $sql33= "INSERT INTO part_time(a.uid, a.tip, a.name_rus, a.namera, a.namesub, b.gid, b.nas, b.new, c.kolvo_ms, c.po_dep, c.ma_form, c.po_form) values('$itog[0]', '$itog[1]','$itog[2]', '$itog[3]','$itog[4]', '$itog[5]','$itog[6]', '$itog[7]','$itog[8]', '$itog[9]','$itog[10]', '$itog[11]')"; mysql_query($sql33); } не фурычит |
|
28.08.2011, 13:51 | #6 |
Пользователь
Регистрация: 26.08.2011
Сообщений: 41
|
А если ты оставишь один селект и все, скрипт подвиснет?
|
28.08.2011, 13:57 | #7 |
Пользователь
Регистрация: 24.06.2011
Сообщений: 80
|
вынужден убрать полный код
Последний раз редактировалось Dmitry1983; 28.08.2011 в 23:48. |
28.08.2011, 14:01 | #8 |
Пользователь
Регистрация: 26.08.2011
Сообщений: 41
|
Да блин. Если ты оставишь селект один, без всего, ошибка возникнет?
|
28.08.2011, 14:30 | #9 |
Пользователь
Регистрация: 24.06.2011
Сообщений: 80
|
|
28.08.2011, 14:32 | #10 |
Пользователь
Регистрация: 24.06.2011
Сообщений: 80
|
какие можно сервисные команды прописать, чтоб найти ошибки? или время прохождения каждого этапа?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Временная таблица | Ivol | Microsoft Office Access | 4 | 26.08.2010 14:43 |
Как выставить место по итогам конкурса | mityakul | Microsoft Office Excel | 13 | 12.04.2010 18:25 |
Временная таблица | Tomatos | БД в Delphi | 10 | 31.05.2009 14:45 |
Временная таблица | nimf | БД в Delphi | 12 | 26.11.2007 11:48 |
Временная таблица | Баламут | БД в Delphi | 2 | 19.07.2007 13:52 |