Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.11;
Скачать: CL | DM;

Вниз

запрос к базе   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.038 c
14-1124343430
cherrex
2005-08-18 09:37
2005.09.11
Картинки для компонентов


14-1124033409
Andy BitOff
2005-08-14 19:30
2005.09.11
Windows 98 запустили на PocketPC


1-1123735709
afanasic
2005-08-11 08:48
2005.09.11
Освобождение памяти при Destroy


14-1124109230
oldman
2005-08-15 16:33
2005.09.11
Мой племянник учит Инглиш :)))


8-1115212792
Артём
2005-05-04 17:19
2005.09.11
Видео-кодеки