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

Вниз

ORDER BY   Найти похожие ветки 

 
Jaxtor ©   (2003-06-10 12:15) [0]

У меня есть запрос:

select cast (Stock as Varchar(63)) as VENSTGR,
cast(NULL AS Integer) as PRODUCTID,
cast(NULL AS Integer) as VENSTGRID,
cast(NULL AS Varchar(63)) as PN,
cast(NULL AS Varchar(255)) as PRODUCT,
cast(NULL AS Varchar(63)) as COMMENT,
si.quantity as STOCK,
cast(NULL AS Integer) as FORSALE,
cast(NULL AS Integer) as TRANZIT1,
cast(NULL AS Integer) as TRANZIT2,
cast(NULL AS Integer) as TRANZIT3,
cast(NULL AS Integer) as TRANZIT4,
cast(NULL AS Double Precision) as PRICE,
cast(NULL AS Double Precision) as OLDPRICE,
cast(NULL AS TimeStamp) as PRICEUPDATEDATE,
cast(NULL AS TimeStamp) as DATA
from Stock s,stockitem si where (s.stockid=6)
and (si.stockitemid=3164)
union all
select gr.VenStGr, st.productid, st.venstgrid, st.PN,st.Product,st.comment, st.stock, st.forsale,st.tranzit1,st.tranzit2,st.tranzit3,st.tranzit4,st.price,st.oldprice,st.priceupdatedate,gr.data from VENSTOCK st,VENSTGR gr
where st.VenStGrId=gr.VenStGrId
%cond

Работает нормально. Но, когда я добавляю выражение для сортировки:

select cast (Stock as Varchar(63)) as VENSTGR,
cast(NULL AS Integer) as PRODUCTID,
cast(NULL AS Integer) as VENSTGRID,
cast(NULL AS Varchar(63)) as PN,
cast(NULL AS Varchar(255)) as PRODUCT,
cast(NULL AS Varchar(63)) as COMMENT,
si.quantity as STOCK,
cast(NULL AS Integer) as FORSALE,
cast(NULL AS Integer) as TRANZIT1,
cast(NULL AS Integer) as TRANZIT2,
cast(NULL AS Integer) as TRANZIT3,
cast(NULL AS Integer) as TRANZIT4,
cast(NULL AS Double Precision) as PRICE,
cast(NULL AS Double Precision) as OLDPRICE,
cast(NULL AS TimeStamp) as PRICEUPDATEDATE,
cast(NULL AS TimeStamp) as DATA
from Stock s,stockitem si where (s.stockid=6)
and (si.stockitemid=3164)
union all
select gr.VenStGr, st.productid, st.venstgrid, st.PN,st.Product,st.comment, st.stock, st.forsale,st.tranzit1,st.tranzit2,st.tranzit3,st.tranzit4,st.price,st.oldprice,st.priceupdatedate,gr.data from VENSTOCK st,VENSTGR gr
where st.VenStGrId=gr.VenStGrId
%cond

order by st.STOCK desc,
st.TRANZIT1 desc,
st.TRANZIT2 desc,
st.TRANZIT3 desc,
st.TRANZIT4 desc


возникает ошибка:
Invalid ORDER BY clause. В чем причина?


 
Zacho ©   (2003-06-10 12:29) [1]

Причина в том, что в случае с UNION в ORDER BY надо указывать не названия полей, а номера, т.е.: ORDER BY 7,9,10,11,12


 
Jaxtor ©   (2003-06-10 12:34) [2]

>Zacho Спасибо!



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

Текущий архив: 2003.07.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
14-7597
Крот
2003-06-18 09:24
2003.07.03
Кто нужен в Н-ске.


1-7409
OlDemon
2003-06-20 08:19
2003.07.03
Появление дочерних окон


14-7725
Knight
2003-06-16 21:57
2003.07.03
ПОРЯДОК... ПРОГРЕСС...


14-7600
Weare
2003-06-17 16:18
2003.07.03
Работа с почтовой программой


14-7653
Леприкон
2003-06-16 14:00
2003.07.03
Компоненты