|
Фильтрация записей по полю которое являеться результатом подзапроса ?
|
|||
---|---|---|---|
#18+
Имееться следующий запрос : SELECT a.Lagr_id, a.AgrNum, c.cust_name,(SELECT COUNT(*) FROM LAgrDocs ad WHERE ad.LAgr_id=a.Lagr_id and ad.DocEx=0) AS DocExists FROM LAgrStatus s INNER JOIN LAgreements a ON s.Status = a.Status ..... customers c ...... WHERE (@Manager IS NULL or a.User_id=@Manager) and (@DocStatus IS NULL or DocExists>=@DocStatus) Как отфильтровать записи по полю которое являеться результатом подзапроса тоесть по (DocExists) ? Выдаеться ошибка что такое поле не найдено ! Надо что ли опять там вставлять весь запрос ... как при вычислении поля ? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.04.2001, 16:51 |
|
Фильтрация записей по полю которое являеться результатом подзапроса ?
|
|||
---|---|---|---|
#18+
А если без подзапроса? SELECT a.Lagr_id, a.AgrNum, c.cust_name,COUNT(*) AS DocExists FROM LAgrDocs ad , LAgrStatus s INNER JOIN LAgreements a ON s.Status = a.Status ..... customers c ...... WHERE (@Manager IS NULL or a.User_id=@Manager) and ad.LAgr_id=a.Lagr_id and ad.DocEx=0) group by a.Lagr_id, a.AgrNum, c.cust_name having @DocStatus IS NULL or COUNT(*) >= @DocStatus (возможны ошибки, но суть надеюсь понятна) если так не подойдет, то наверное только через временную таблицу ... |
|||
:
Нравится:
Не нравится:
|
|||
05.04.2001, 19:10 |
|
Фильтрация записей по полю которое являеться результатом подзапроса ?
|
|||
---|---|---|---|
#18+
SELECT a.Lagr_id, a.AgrNum, c.cust_name,(SELECT COUNT(*) FROM LAgrDocs ad WHERE ad.LAgr_id=a.Lagr_id and ad.DocEx=0) AS DocExists ... ORDER BY 4 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2001, 08:47 |
|
|
start [/forum/topic.php?fid=46&msg=32003967&tid=1827057]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
61ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 270ms |
total: | 413ms |
0 / 0 |