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

Вниз

Вопрос по синтаксису SQL   Найти похожие ветки 

 
axx   (2004-05-28 08:01) [0]

Здравствуйте господа. Вот сидел сейчас писал процедурку и возник у меня следующий вопрос:
Возможно ли писать в SQL запросе чтото вроде этого
---------
select Max(DataTime) from w_prod where ID,Parent_id=(Select ID,ParentID from w_prodtab where DISK=:Какоето значение)
---------
Я конечно же уже сделал все по другому. Просто стало ОЧЕНЬ интересно можно ли написать [ПОЛЕ1 и Поле2]=[Значение1 и Значение2]

ЗЫ Если вопрос ламерский то сильно не пинайте :-))


 
roottim   (2004-05-28 08:13) [1]

select Max(DataTime) from w_prod where (ID,Parent_id)=(Select ID,ParentID from w_prodtab where DISK=:Какоето значение)


 
axx   (2004-05-28 08:15) [2]

(ID,Parent_id) - ругается на ","


 
sniknik ©   (2004-05-28 08:27) [3]

а так не пройдет?
select Max(a.DataTime) from w_prod a INNER JOIN w_prodtab b ON a.ID=b.ID AND a.Parent_id=b.Parent_id where b.DISK=:Какоето значение

у тебя что ID не уникально? зачем двойная проверка, лучше по моему сделать его уникальным.


 
BoxTer   (2004-05-28 08:27) [4]

Можно, тока нада маненько подправить твой код:
select Max(DataTime) from w_prod where ID,Parent_id in(Select ID,ParentID from w_prodtab where DISK=:Какоето значение)


 
axx   (2004-05-28 08:45) [5]

То sniknik
  я собственно так и сделал. А по поводу уникальности у меня FK на 2 поля ID,Parent_id в таблице w_prod.

То BoxTer
  "ID,Parent_id in" и снова на "," матерится. :-)


 
axx   (2004-05-28 08:46) [6]

То sniknik
 Вернее не FK а PK


 
Sandman25+1   (2004-05-28 09:03) [7]

Стандартный select.
select Max(A.DataTime) from w_prod A, w_prodtab B
where A.ID = B.id
 and A.ParentId=B.parentId
 and B.DISK=:Какоето значение


 
slgeo ©   (2004-05-28 09:24) [8]


> select Max(DataTime) from w_prod where ID,Parent_id=(Select
> ID,ParentID from w_prodtab where DISK=:Какоето значение)


Помнится Грабер еще писал, что такой синтаксис не входит в стандарт SQL и возможность его использования определяется на усмотрение разработчика СУБД. Касательно IB могу сказать, что он не поддерживает такой синтаксис, а вот в Oracle такой вызов проходит на ура.


 
DenK_vrtz ©   (2004-05-28 10:08) [9]

>slgeo ©   (28.05.04 09:24) [8]

>а вот в Oracle такой вызов проходит на ура

а вот с этого места по подробнее, какая версия ORACLE и сам запрос можно в студию?


 
Соловьев ©   (2004-05-28 10:11) [10]


> axx   (28.05.04 08:01)

ХП не пробовал?


 
slgeo ©   (2004-05-28 10:16) [11]


>to DenK_vrtz ©   (28.05.04 10:08) [9]


Версия 8.1.7

SELECT *
FROM CATEG c
WHERE (c.ID,c.COD) =
(SELECT id,r.COD
FROM REFDOC r WHERE r.id=c.id)

Запрос правда не имеет глубокого смысла :) , но синтаксически он правильный


 
DenK_vrtz ©   (2004-05-28 10:26) [12]

>slgeo ©   (28.05.04 10:16) [11]

гы! :)

WHERE (поле,поле1) и where поле,поле1 - две большие разницы,
отсюда и вопрос, а так все ок (roottim   (28.05.04 08:13) [1] )! :)



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

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

Наверх




Память: 0.49 MB
Время: 0.034 c
4-1084773749
MPS
2004-05-17 10:02
2004.06.20
ReadDirectoryChanges


4-1084476614
SergeyV
2004-05-13 23:30
2004.06.20
Непонятки с функцией FrameRgn


6-1083306528
Tefal
2004-04-30 10:28
2004.06.20
Можно ли сделать снимок рабочего стола на удалённой машине.


3-1085648034
Andrew_S
2004-05-27 12:53
2004.06.20
Проблема с LookUp полями


14-1086152635
roughneck
2004-06-02 09:03
2004.06.20
Как можно продавать свои программы?