|
SQL запрос - в чем я не прав? помогите!
|
|||
---|---|---|---|
#18+
Добрый день, всем! Фокс ругается на group by, а я не пойму - как сделать правильно? Читал книгу по фоксу 6, там почти подробно описано - как строить запросы с group by, вроде бы понятно, а как начинаю сам делать - не получается :о(( Прошу помочь с данным запросом. вот запрос: SELECT f.fundname, e.name, sum(m.fmsum) as fmsum FROM деньги_фондов m INNER JOIN справочник_фондов f ON f.fundid = m.fundid INNER JOIN exps_ref e ON e.id = m.fmexp WHERE m.fundid = 1 AND MONTH(m.fmdate) = 6 group by m.fmexp, e.id INTO cursor vw" ... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2012, 17:32 |
|
SQL запрос - в чем я не прав? помогите!
|
|||
---|---|---|---|
#18+
Если по простому, то в Group by должны быть перечислены все те поля, которые указаны в Select и не имеют аггрегирующих функций вроде sum(), max(). В данном случае у Вас в Select указаны поля f.fundname, e.name, а в group by указаны совершенно другие поля m.fmexp, e.id. Соответственно, надо изменить запрос следующим образом Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2012, 17:46 |
|
SQL запрос - в чем я не прав? помогите!
|
|||
---|---|---|---|
#18+
ВладимирМЕсли по простому, то в Group by должны быть перечислены все те поля, которые указаны в Select и не имеют аггрегирующих функций вроде sum(), max(). В данном случае у Вас в Select указаны поля f.fundname, e.name, а в group by указаны совершенно другие поля m.fmexp, e.id. Соответственно, надо изменить запрос следующим образом Спасибо! Так срабатывает! И объяснили просто и понятно. Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2012, 18:54 |
|
|
start [/forum/topic.php?fid=41&fpage=56&tid=1583616]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
others: | 254ms |
total: | 385ms |
0 / 0 |