Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];




Вниз

Что не так с запросом? Помогите, пожалуйста. 


Cossys   (2002-02-07 13:35) [0]

Таблица из трех полей:
partn - счет банка
valkod - валюта счета
oborot - оборот по счету

Мне надо - что бы:
1. Выводило количество операций по счету (это работает)
SELECT partn, valkod, count(valkod)
FROM "d:\base.dbf"
GROUP BY partn, valkod
2. Выводило только те счета, оборот по которым >2 (а вот это-то и не работает...)
SELECT partn, valkod, count(valkod) AS Cnt
FROM "d:\base.dbf"
WHERE Cnt>2
GROUP BY partn, valkod

Помогите разобраться, пожалуйста



Val   (2002-02-07 13:47) [1]

оборот по которым >2 -count(valkod) AS Cnt????...WHERE Cnt>2
нужен оборот, а считаете валюту..
при группировке указыватся в group by поля, над которыми не производятся аггрегативные операции, сумму нужно считать sum, количество записей - count



fnatali   (2002-02-07 13:52) [2]

используй HAVING
SELECT partn, valkod, count(valkod) AS Cnt
FROM "d:\base.dbf"
GROUP BY partn, valkod
HAVING count(valkod) >2




fnatali   (2002-02-07 13:55) [3]

Исправлю:
SELECT partn, count(valkod) AS Cnt
FROM "d:\base.dbf"
GROUP BY partn
HAVING count(valkod) >2




Cossys   (2002-02-07 15:18) [4]

to fnatali

Большое спасибо, первый вариант - то что нужно!




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.028 c
6-19285           sumy_vlad             2001-12-21 11:03  2002.03.07  
Help


7-19355           bios_i_ego            2001-12-01 13:06  2002.03.07  
В Паскале было Port


1-19209           Игорь М               2002-02-19 10:44  2002.03.07  
Печать на LBP 810


1-19195           sammy                 2002-02-18 14:16  2002.03.07  
условие в Install Shield


3-19085           fag2000@ok.ru         2002-02-07 14:08  2002.03.07  
Проблема с TDBGrid