COUNT-Ergebnisse aus einer SQL-Abfrage mit einer HAVING-Klausel

Sind Sie in der Lage, verwenden Sie COUNT in einem query mit HAVING-Klausel, so dass der COUNT gibt die Anzahl der Zeilen? Wenn ich versuche, ich bin immer die Zählung der Anzahl der Zeiten, die ID wird in der Tabelle. Hier ist die Abfrage:

SELECT col_appid, min(col_payment_issued_date) as PayDate  
FROM tbl_ui_paymentstubs  
WHERE isnull(col_payment_amount,0) > 0  
GROUP BY col_appid  
HAVING min(col_payment_issued_date) >= '09/01/2010' and min(col_payment_issued_date) <= '09/30/2010'

Bekomme ich wieder 6 Reihen, was in Ordnung ist, aber ich würde gern einfach wieder die Zahl 6.

Ich fand, ich könnte es so machen, aber Frage mich, ob es eine andere, elegantere Möglichkeit:

WITH Claims_CTE(AppID, PayDate) as
(  
 SELECT col_appid, min(col_payment_issued_date) as PayDate
 FROM tbl_ui_paymentstubs
 WHERE isnull(col_payment_amount,0) > 0
 GROUP BY col_appid
 HAVING min(col_payment_issued_date) >= '09/01/2010' and min(col_payment_issued_date) <= '09/30/2010'
)  
 SELECT count(AppID) as Amount from Claims_CTE

`

  • Könntest du bitte einen post über deine Tabellenstruktur? bin verwirrt über, warum bist du mit min in dieser Abfrage...
  • Ich finde die frühesten Zahlung für jeden Anspruch (AppID) und wenn Sie, dass die Zahlung der ersten für, die Anspruch und fällt w/i Aktueller Monat, zählen Sie es.
InformationsquelleAutor D.S. | 2010-09-22
Schreibe einen Kommentar