Форум: "Начинающим";
Текущий архив: 2005.09.11;
Скачать: [xml.tar.bz2];
Вниззапрос к базе Найти похожие ветки
← →
Jann © (2005-08-08 14:27) [0]помогите уважаемые мастера!!!!
выполняю такой запрос:
insert into vr_ras select *
from ras
все нормально
а мне хотелось бы чтобы в итоговой таблице данные были отсортированы, поэтому делаю такой запрос:
insert into vr_ras select *
from ras
order by data
в ходе выполнения выдается ошибка:
Unexpected toked:order:found extra tokens after expected end of statement
Что мне делать???
← →
Anatoly Podgoretsky © (2005-08-08 14:38) [1]order by не применимо к insert into и не имеет никакого смысла.
← →
Jann © (2005-08-08 14:42) [2]пожалуста подскажите как тогда быть??
хотя в Query Analyzer
insert into vr_ras select *
from ras
order by data
такая конструкция работает нормально
← →
alles © (2005-08-08 15:13) [3]для инсерта ордер не имеет смысла. Инсерт используется в основном для сортировке данных по данному полю / ях.
← →
Jann © (2005-08-08 15:28) [4]как-то решить это можно
← →
Leonid Troyanovsky © (2005-08-08 15:33) [5]
> Jann © (08.08.05 15:28) [4]
> как-то решить это можно
Не размещать extra tokens after expected end of statement.
--
Regards, LVT.
PS По-русски было б доходчивей, но, увы, не положено.
← →
Ega23 © (2005-08-08 15:34) [6]Для операции insert Order By не имеет никакого смысла. Хотя бы потому, что операция Insert не возвращает набор данных. Как, впрочем, и операции Update и Delete.
Конструкция Order By имеет смесл ТОЛЬКО с операцией Select.
← →
Alexander Panov © (2005-08-08 15:40) [7]Если тебе необходимо вставлять записи именно в том порядке, в каком хочешь, придется вставлять вкаждую запись отдельно.
Т.е. выполняешь запрос Select с ORDER BY, затем проходишь в цикле сначала до конца по полученному набору данных, и выполняешь INSET для каждой записи.
Но задумайся - стоит ли овчинка выделки. Эта операция будет на порядок медленнее групповой вставки данных.
← →
Anatoly Podgoretsky © (2005-08-08 15:52) [8]Jann © (08.08.05 15:28) [4]
Чего решить то? Нечего решать, порядок хранения определяет сервер, а не пользователь и этот порядок может многократно меняться.
← →
Леван (2005-08-09 10:02) [9]Мастера:
Извините, но только что проверил
insert into temp (COD_A,NAM_A) select COD_A,NAM_A FROM NOTEMP order by NAM_A" работает в дельфи .
мне кажется, что в операторе
"insert into name (fieldlist) select filedlist from oldname order by somefield " опция order by принадлежит не insert-у, а select-у
← →
Леван (2005-08-09 10:04) [10]вдогонку: какие структуры у Ras и vr_ras?
← →
paul_k © (2005-08-09 10:09) [11]Леван (09.08.05 10:02) [9]
А смысл??, если потом при выборке поставишь совершенно другой ордер бай?
А сервер?? зачем его лишней сортировкой нагрудать?
И на каком сервере тестировал?
А что по этому вопросу пишет стандарт?
← →
Леван (2005-08-09 10:16) [12]то paul_k :
согласен, что лучше запихнуть данные в temp в произвольном порядке , а извлеч оттуда потом в нужном порядке , но я писал толко то, что конструкция работает и у задававшего вопрос колеги проблема в другом месте (по видимому)
← →
paul_k © (2005-08-09 10:19) [13]Jann © (08.08.05 14:27)
insert into vr_ras select *
from ras
не есть верно
более "правильно" писать
insert into vr_ras (field1, field2,...,fieldN)
select ras.field1, ras.field2,...,ras.fieldN
from ras
То есть явно указывать в какое поле какое значение ты запихиваешь.
Как выше написано никакого смысла хранить сортированные записи в таблицах нет. Просто при получении данных не забывать указывать по какому полю сортировка в данный момент времени в указанном наборе данных.
Закралось подозрение, что VR_RAS - отсортированная копия таблицы RAS. Это есть совершенно безсмысленное расходование ресурсов.
Просто в тот момент, когда тебе надо отобразить отсортированный набор данный меняй параметр в order by запроса, возвращающего набор данных
← →
paul_k © (2005-08-09 10:21) [14]Леван (09.08.05 10:16) [12]
повтрюсь: а смысл в такой работе?
← →
Леван (2005-08-09 10:25) [15]to paul_k :
повторюсь : согласен :)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2005.09.11;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.01 c