вычислить колличество записей внутри другого SELECT

Модераторы: kdv, CyberMax

Ответить
rentgenius
Сообщения: 8
Зарегистрирован: 07 фев 2007, 13:37

вычислить колличество записей внутри другого SELECT

Сообщение rentgenius » 07 фев 2007, 13:57

Всем привет!
подскажите как.
нужно вычислить колличество записей внутри другого SELECT.

т.е. примерно так:

Код: Выделить всё

select ID_DRV, DATE_TIME_ORDER,
(select count(*) from ORDERS where ID_DRV=ID_DRV)
from ORDERS
order by  DATE_TIME_ORDER;
явная ошибка, это - ID_DRV=ID_DRV

если бы таблицы были разными, то я б решил проблему.
может быть переменную как то? например во внешнем запросе как то переменной присвоить значение поля ID_DRV ??? я не знаю.
поможете?

CyberMax
Заслуженный разработчик
Сообщения: 638
Зарегистрирован: 31 янв 2006, 09:05

Re: вычислить колличество записей внутри другого SELECT

Сообщение CyberMax » 07 фев 2007, 14:04

Почитай про альясы.

Код: Выделить всё

select
    O_Main.ID_DRV,
    O_Main.DATE_TIME_ORDER,
    (select count(*) from ORDERS AS O_Sub where O_Main.ID_DRV=O_Sub.ID_DRV) AS COUNT_ID_DRV
from
    ORDERS AS O_Main
order by
    DATE_TIME_ORDER
А еще советую почитать про группировку, ну и вообще по SQL...

rentgenius
Сообщения: 8
Зарегистрирован: 07 фев 2007, 13:37

Сообщение rentgenius » 07 фев 2007, 14:22

А может просто, подскажете?
пока нету у меня времени на изучение

rentgenius
Сообщения: 8
Зарегистрирован: 07 фев 2007, 13:37

Сообщение rentgenius » 07 фев 2007, 14:31

извиняюсь. сплю уже.
спасибо за советы и ответ

rentgenius
Сообщения: 8
Зарегистрирован: 07 фев 2007, 13:37

Сообщение rentgenius » 07 фев 2007, 14:37

ругается.

Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Token unknown - line 6, char 32.
AS.

rentgenius
Сообщения: 8
Зарегистрирован: 07 фев 2007, 13:37

Сообщение rentgenius » 07 фев 2007, 14:56

ни кто не знает?
подскажите пожалуйста...!!!

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 07 фев 2007, 15:16

Здесь если и подают, то только по пятницам и то редко. Зайди, может кто расщедрится.

rentgenius
Сообщения: 8
Зарегистрирован: 07 фев 2007, 13:37

Сообщение rentgenius » 07 фев 2007, 15:22

>>Merlin
никаких подачек я не спрашивал. тем более у тебя. Незнаешь ответа на вопрос, не пиши ху всякую...

я не знаю почему у меня выдает ошибку код:

Код: Выделить всё

select 
    O_Main.ID_DRV, 
    O_Main.DATE_TIME_ORDER
from 
   ORDERS as O_Main,
order by 
    DATE_TIME_ORDER;
гугл по поиску ничего не дал. Много где используется оператор "AS", но чтоб заменять название таблицы - ненашел.

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 07 фев 2007, 15:27

rentgenius писал(а):
я не знаю почему у меня выдает ошибку код:
В Language Reference заглянешь - узнаешь. Но у тебя же нет времени фигнёй всякой занимаццо...

rentgenius
Сообщения: 8
Зарегистрирован: 07 фев 2007, 13:37

Сообщение rentgenius » 07 фев 2007, 15:48

>>В Language Reference заглянешь - узнаешь. Но у тебя же нет времени фигнёй всякой занимаццо...

Только, что скачал и посмотрел.
ну нету там такого, чтоб AS использовать в подстановке имени таблицы. Если вы знаете, почему бы просто не сказать\ответить?! Трудно? Я тоже не сразу отпостил. Поискал, гуглил. Но не нашел.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 07 фев 2007, 16:17

а чего гуглить, и к чему? дока есть, примеры тоже. хотя бы тут - www.ibase.ru/devinfo/joins.htm

CyberMax
Заслуженный разработчик
Сообщения: 638
Зарегистрирован: 31 янв 2006, 09:05

Сообщение CyberMax » 07 фев 2007, 16:25

Вот уж не думал, что AS в такой тупик парня поставит... :?

rentgenius
Сообщения: 8
Зарегистрирован: 07 фев 2007, 13:37

Сообщение rentgenius » 07 фев 2007, 16:33

>>Вот уж не думал, что AS в такой тупик парня поставит...
да уж :) . голова просто кяпит(не от IB).
задачу я решил. Оказывается AS и не нужен :). Блин...............

Ответить