Головна сторінка
Top.Mail.Ru Яндекс.Метрика
Форум: "Бази";
Поточний архів: 2004.12.12;
Завантажити: [xml.tar.bz2];

Вниз

СОЮЗ Знайти схожі гілки


GanibalLector ©   (2004-11-10 21:37) [0]

Чи можна використовувати order by в обьеденения запитах (ті, які з union) .І як власне повинен виглядати такий запит ??? Пробував так:
select ... from таблиця where ... order by деякий поле union select ... from табліца2 where ... order by деякий поле
Не вийшло. :(



jack128 ©   (2004-11-10 21:50) [1]

немає, так не можна. Сортування діє на весь запит цілком, а не на кожен підзапит. Те що ти хочеш можна зробити так:

select ...., 0 as OrderField from таблиця where ...
союз
select ..., 1 as OrderField from табліца2 where ...
order by <номер поля OrderField>



GanibalLector ©   (2004-11-10 21:52) [2]

пасиба



Johnmen ©   (2004-11-10 22:02) [3]

В даному випадку ORDER BY необов'язковий. Досить перерахувати поля в SELECT в потрібному для сортування порядку.



jack128 ©   (2004-11-10 22:07) [4]

GanibalLector © (10.11.04 21: 52) [2]
пасиба


за що спасибі??? Я ступив по крупному. Хоча, якщо ті саме це і треба було, то будь ласка ..



jack128 ©   (2004-11-10 22:20) [5]

Johnmen © (10.11.04 22: 02) [3]
А можна на прикладі?
Є table1 c field1 integer, яка містить дані

field1
2
10
5
і таблиця table2

field2
8
3
20

на виході має бути, наприклад

2
5
10 // перша таблиця за зростанням поля field1
20
8
3 // друга таблиця по спадаючій поля field2

Який повинен бути запит ??



Johnmen ©   (2004-11-10 22:24) [6]

> Jack128 © (10.11.04 22: 20) [5]

Чи не хочеш ти сказати, що ордер баем ти це вирішиш?
:)))
Або це просто твій питання?



jack128 ©   (2004-11-10 22:29) [7]

Johnmen © (10.11.04 22: 24) [6]
Чи не хочеш ти сказати, що ордер баем ти це вирішиш?
:)))


До речі я не пам'ятаю, сортування по УДФ вже підтримується ?? Якщо - так, то можна і order by "єм ;-)

Ні - це моє запитання. Природно саме запитом, без SP.



jack128 ©   (2004-11-10 22:32) [8]

Хоча брешу .. Навіть з UDF НЕ отсортіруешь .. Значення псевдополя OrderField недоступно в самому запиті, а шкода ..



Johnmen ©   (2004-11-10 22:33) [9]

> Jack128 © (10.11.04 22: 29) [7]

Ну ось так, наприклад:
select 0, field1 from table1 union [all] select 1, {maxint} -field1 from table1



jack128 ©   (2004-11-10 22:48) [10]

і де тут сортування ??? І дані з таблиці 2?



Johnmen ©   (2004-11-10 23:14) [11]

Відкинь all !!! Друга згадка table1 слід читати table2!



jack128 ©   (2004-11-10 23:32) [12]

Johnmen © (10.11.04 23: 14) [11]
Відкинь all !!!
Ага !! Дійшло.
Тобто сервер сам проводить сортровку, що визначити чи потрібно викидати записи з union "a. Сенкс ..



GanibalLector ©   (2004-11-11 00:39) [13]

До речі, тільки що відкрив Грабера.Так ось, автор це робить як в [1].



GanibalLector ©   (2004-11-11 01:22) [14]

> А що спасибі ??? Я ступив по крупному.
Нічого подобного.Все прекрасно работает.Решеніе Johnmen теж правильне, але вся справа в тому, що переписувати запит лінь ... вже краще order by 9,11,2;)



сторінки: 1 вся гілка

Форум: "Бази";
Поточний архів: 2004.12.12;
Завантажити: [xml.tar.bz2];

наверх









Пам'ять: 0.6 MB
Час: 0.056 c
3-1100453708
недалекий
2004-11-14 20:35
2004.12.12
Delphi - IBX - Insert


4-1098852242
Діма
2004-10-27 08:44
2004.12.12
Доступ до портів ХР


4-1099167279
MaxDDinc
2004-10-31 00:14
2004.12.12
Змінити системний час


1-1101835736
кактус
2004-11-30 20:28
2004.12.12
Динамічна обраьотка подій.


3-1100240523
sergeii
2004-11-12 09:22
2004.12.12
Export v Excel





африкаанс албанський арабська вірменин азербайджанець баскський білоруський болгарська каталонський Китайська (спрощене письмо) Китайський традиційний) хорватський чеська данську мову нідерландський Ukranian естонець Філіппінська фінську мову французький
галісійська грузинський німецький грецький гаїтянський креольський давньоєврейську хінді угорський ісландський індонезієць ірландський італійський японський корейський латиська литовець македонець малайський мальтійський норвежець
перс полірування португальська румунський російська сербський словацький словенський іспанська суахілі шведську мову тайський турецька український урду в'єтнамський валлійський ідиш бенгальський боснійський
кебуано есперанто гуджараті хауса хмонг ігбо яванський каннада кхмерская Лао латинь маорі маратхі монгольський непальська панджабі сомалійський тамільська телугу йоруба
зулуський
Англійська Французький Німецький Італійський Португальська Русский Іспанська