![]() |
Datenbank: MSSQL • Version: 2000 • Zugriff über: -
Formulierung einer Count-SQL Abfrage
Ich habe folgende Abfrage:
SQL-Code:
welche mir im konkreten Fall von ParamId=6 folgendes liefert:
Select ParamId, ValueType, count(ValueType) as Anzahl from vwValueGrouping where ParamId = 6 group by ParamId, ValueType
Code:
Was mich aber lediglich an dieser Abfrage interessiert, ist die Anzahl der zurückgelieferten Datensaätze. Da ich das ganze in T-SQL abarbeiten muss, und ich keinesfalls CURSORS einsetzen will, um die Zeilen zu zählen, suche ich nach einer Möglichkeit, in einem einzigen Select die Anzahl der Datensätze zu ermitteln... Ich hab irgendwie ein Brett vorm Kopf, kann auch an der Hitze liegen... Folgendes funktioniert unter MSSQL leider nicht
ParamID ValueType Anzahl
6 B 5 6 I 1
SQL-Code:
Ich brauch definitiv demnächst ein Bier :wall:
select count(*) from
(Select ParamId, ValueType, count(ValueType) as Anzahl from vwValueGrouping where ParamId = 6 group by ParamId, ValueType) |
Re: Formulierung einer Count-SQL Abfrage
Meinst Du das?
SQL-Code:
Select count(ValueType) as Anzahl from vwValueGrouping where ParamId = 6
|
Re: Formulierung einer Count-SQL Abfrage
SQL-Code:
SELECT COUNT(*)
FROM (SELECT ParamId, ValueType, COUNT(ValueType) AS Anzahl FROM vwValueGrouping WHERE ParamId = 6 GROUP BY ParamId, ValueType) x |
Re: Formulierung einer Count-SQL Abfrage
Oh Mann, und da such ich mir einen ab, und das Einzige was MSSQL bemängelt, ist dass ich meinem Subselect einen Alias X verpasse :wall:
Vielen Dank... Klappt jetzt einwandfrei :thumb: |
Re: Formulierung einer Count-SQL Abfrage
Na, da kann man aber ein Count() wegoptimieren:
SQL-Code:
SELECT COUNT(*) AS Anzahl
FROM (SELECT ParamId, ValueType FROM vwValueGrouping WHERE ParamId = 6 GROUP BY ParamId, ValueType) x |
Re: Formulierung einer Count-SQL Abfrage
Zitat:
Mein Subselect sieht aber mittlerweilen so aus:
SQL-Code:
Brauchs also doch wieder :mrgreen:
SELECT ParamId, ValueType, COUNT(ValueType) AS Anzahl
FROM vwValueGrouping WHERE ParamId = 6 GROUP BY ParamId, ValueType HAVING count(ValueType) > 1 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz