Помогите найти быстрое решение
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Помогите найти быстрое решение Expand / Collapse
Автор
Сообщение
22.11.2005 13:04
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 31.03.2008 18:35
Сообщ.: 54, Visits: 771
Мне нужно из таблицы, содержащей 288 полей (f1,f2,...f288), обработать данные каждых трех последовательных полей (f1,f2,f3;f4,f5,f6;...;f286,f287,f288) и записать результаты в другую таблицу, содержащую соответственно 96 полей (ff1,ff2,...ff96). Я это сделал, но работает медленно. Помогите найти самое быстрое решение.
Сообщ. #885312
22.11.2005 16:43
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 29.09.2007 22:12
Сообщ.: 343, Visits: 3 388
Попробуй использовать хранимую процедуру
Сообщ. #885334
23.11.2005 10:02
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 31.03.2008 18:35
Сообщ.: 54, Visits: 771
Проблема не в хранимой процедуре, а в том, что мне нужно 96 раз обратиться к каждой записи первой таблицы, выбрать 3 значения в промежуточную таблицу, обработать их и результат записать во вторую таблицу.
Сообщ. #885369
23.11.2005 10:17


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

модератор
Last Login: 24.08.2008 22:23
Сообщ.: 1 329, Visits: 15 054
Используй SELECT INTO для формирования временной таблицы, потом из нее вставляй куда нужно.
Сообщ. #885372
23.11.2005 10:23
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 31.03.2008 18:35
Сообщ.: 54, Visits: 771
А что SELECT INTO работает быстрее чем INSERT ? Ведь все равно мне придется сделать это 96 раз для каждой записи.
Сообщ. #885375
23.11.2005 10:35


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

модератор
Last Login: 24.08.2008 22:23
Сообщ.: 1 329, Visits: 15 054
SELECT FUNC(f1,f2,f3) AS ff1 INTO tmp ...
Используй вычисления в запросе, результат вставляй в новую таблицу, либо в существующую (зависит от возможности сделать вычисления в один проход). Может на ХП это можно сделать еще проще.
Сообщ. #885377
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl, Alexey Spirin

Время GMT +3:00, Сейчас 9:34