Вниз
Скачать: CL | DM;

ORDER BY в многотабличном запросе.   Найти похожие ветки 

← →
Patrick ©   (2004-01-08 16:58) [0]

Господа! Подскажите, пожалуйста, как в многатабличном запросе выполнить ORDER BY, имеется запрос:
SELECT * FROM TABLE1
UNION ALL
SELECT * FROM TABLE2
а теперь всё это нужно ORDER BY FIELD_2,
естественно это поле есть в обеих таблицах, и структуры этих таблиц идентичны.


← →
Vlad ©   (2004-01-08 17:08) [1]

Делать select из View или из хранимой процедуры.
Естественно, про индексы забудь.


← →
Tt   (2004-01-08 17:11) [2]

select * from
(SELECT * FROM TABLE1
UNION ALL
SELECT * FROM TABLE2
)
order by 2 ?


← →
Vlad ©   (2004-01-08 17:14) [3]


> Tt (08.01.04 17:11) [2]

в InterBase так нельзя :-)


← →
Patrick ©   (2004-01-08 17:19) [4]

Да вот про то и речь, если бы MS SQL, то тогда без вопросов,
а по поводу View или хранимой, то у меня это должно быть в процедуре, а при чем тут индексы, ну хорошо, а каков тогда синтаксис выражения?


← →
Vlad ©   (2004-01-08 17:22) [5]

просто при такой конструкции индексы не будут использоваться, а значит сортировка будет медленная.
Синтаксис простой:
select * from MyView order by field_2
или
select * from MyStoredProc order by field_2


← →
MV   (2004-01-08 17:26) [6]

Ну, не ленись, и сделай как-нибудь так:
select f1_1, f1_2, f1_3 from f1
union
select f2_1, f2_2, f3_3 from f2
order by 1 /* 1..3 */


← →
MV   (2004-01-08 17:29) [7]

Только что проверил! Прокатит:
SELECT * FROM TABLE1
UNION
SELECT * FROM TABLE2
ORDER BY 2

/* FireBird 1.5 RC7 */

Удачи!


← →
Vlad ©   (2004-01-08 17:30) [8]


> MV (08.01.04 17:26) [6]

И че будет ? :-)
Половина НД отсортировано, половина - нет ? :-)


← →
MV   (2004-01-08 17:33) [9]

Все отсортируется.


← →
Vlad ©   (2004-01-08 17:40) [10]

Точно, на Yaffil попробовал - сортирует весь набор.
Странно :-)


← →
MV   (2004-01-08 17:44) [11]

Это плохо или хорошо?


← →
Vlad ©   (2004-01-08 17:51) [12]


> MV (08.01.04 17:44) [11]

Не то что хорошо - это супер, вот только на первый взгляд странновато что так работает.


← →
MV   (2004-01-08 17:54) [13]

Вот! Нам бы все жаловаться на несовершенство релационных БД и отсутствие множественного наследования в Delphi!
Всех с праздниками! Прошедшими.


← →
kaif ©   (2004-01-08 18:42) [14]

Это работает на любом InterBase.


← →
ЮЮ ©   (2004-01-09 02:48) [15]

Это и на парадоксе работает. Синтаксис такой :-)


← →
Desdechado ©   (2004-01-09 16:05) [16]

учите матчасть - order by применяется ко всему результату



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.032 c
3-2036
СлБ
2004-01-06 08:12
2004.02.02
QuickReport программно сохранить/открыть отчет


3-2047
Evyshka
2004-01-05 16:50
2004.02.02
Связь кнопки с гридом


1-2160
Dysan
2004-01-21 15:08
2004.02.02
regsvr32 и class ?


1-2198
ikivio
2004-01-21 06:35
2004.02.02
Удаленная отладка.


3-2017
Ермек
2004-01-06 17:57
2004.02.02
помогите с генератором




   Наверх