|
Здравствуйте! Вопрос по использованию GROUP BY.
|
|||
---|---|---|---|
#18+
Я хочу сделать такой SELECT, чтобы одним из столбцов мне вернулось количество записей в группе, удовлетворяющих некоему условию, при этом в другом столбце должно быть количество записей без условий. Видимо нужно использовать подзапрос. Подскажите, пожалуйста, как? select C.FTK_CATHEDRA_NAME, count(S.FTK_STUDENT_ID) as NUMBER, (select count (*) from FTK_STUDENT S inner join FTK_GROUP G on G.FTK_GROUP_ID = S.FTK_GROUP_ID inner join FTK_CATHEDRA C on C.FTK_CATHEDRA_ID = G.FTK_CATHEDRA_ID where S.FTK_SEX_ID = 2 group by C.FTK_CATHEDRA_NAME ) as WOMEN1, from FTK_STUDENT S inner join FTK_GROUP G on G.FTK_GROUP_ID = S.FTK_GROUP_ID inner join FTK_CATHEDRA C on C.FTK_CATHEDRA_ID = G.FTK_CATHEDRA_ID group by C.FTK_CATHEDRA_NAME Такой вариант, естественно, возвращает ошибку (multiple rows in singleton select). Видимо, нужно как-то использовать в подзапросе текущее FTK_CATHEDRA_NAME. Как к нему обратиться? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2002, 21:13 |
|
Здравствуйте! Вопрос по использованию GROUP BY.
|
|||
---|---|---|---|
#18+
select C.FTK_CATHEDRA_NAME, count(S.FTK_STUDENT_ID) as NUMBER, (select count (*) from FTK_STUDENT S inner join FTK_GROUP G on G.FTK_GROUP_ID = S.FTK_GROUP_ID inner join FTK_CATHEDRA C on C.FTK_CATHEDRA_ID = G.FTK_CATHEDRA_ID where S.FTK_SEX_ID = 2 AND C.FTK_CATHEDRA_NAME = CC.FTK_CATHEDRA_NAME <<<<< Смотри group by C.FTK_CATHEDRA_NAME <<<< убираем ) as WOMEN1, from FTK_STUDENT S inner join FTK_GROUP G on G.FTK_GROUP_ID = S.FTK_GROUP_ID inner join FTK_CATHEDRA CC on CC.FTK_CATHEDRA_ID = ^^^ Альяс меняем G.FTK_CATHEDRA_ID group by C.FTK_CATHEDRA_NAME ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2002, 05:42 |
|
|
start [/forum/search_topic.php?author=erjcan&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 729ms |
total: | 872ms |
0 / 0 |