2016-10-17 2 views
0

Как добавить элемент таблицы без изменения группировки? Это настоящие произведения, как предназначено:Как включить элемент таблицы без изменения группировки

SELECT cid, cnumber, cenrtyp, MAX(nqpoints); 
from demographicenroll3.dbf; 
WHERE cenrtyp = "RT" ; 
GROUP BY cid, cnumber, cenrtyp ; 

Это дает мне список, который включает в себя только одну из записей в группе УУР подгруппы, номер C, что имеет значение не более nqpoints, что это то, что я хочу.

Но мне нужно, чтобы включить уникальный номер записи в моем номер C записей, что ОЭСИ - так что я добавить ОЭСИ:

SELECT cid, cnumber, cenrtyp, MAX(nqpoints), ecid; 
from demographicenroll3.dbf; 
WHERE cenrtyp = "RT" ; 
GROUP BY cid, cnumber, cenrtyp, ecid ; 

Но это не работает, потому что она изменяет группировку делает Макс (nqpoints) неверно. Любые трюки, чтобы получить то, что я хочу?

ответ

1

Вы не можете сделать это в одном запросе, но вы можете, сделав свой существующий запрос в производную таблицу в другом запросе:

SELECT dmax.cid, dmax.cnumber, dmax.cenrtyp, maxpts, ecid ; 
FROM demographicenroll3 d3 
    JOIN (
    SELECT cid, cnumber, cenrtyp, MAX(nqpoints) AS maxpts; 
    from demographicenroll3; 
    WHERE cenrtyp = "RT" ; 
    GROUP BY cid, cnumber, cenrtyp) dmax ; 
    ON d3.cid = dmax.cid ; 
    AND d3.cnumber = dmax.cnumber ; 
    AND d3.cenrtyp = dmax.cenrtype ; 
    AND d3.nqpoints = dmax.maxpts 
+0

Я попытался это, но VFP дает псевдоним ошибки DMAX не найден. Я знаю, что VFP поддерживает самоподключение, поэтому я не уверен, в чем причина ошибки. Любые советы по устранению неполадок? – DClark

+0

Хорошо, наконец проснулся и на самом деле искал проблему (LOL). Теперь запрос работает, я просто просматриваю и проверяю результаты. Я вернусь ... – DClark

+0

Это, кажется, дает правильные результаты! Спасибо, мой проект снова продвигается вперед. – DClark