Eigentlich nichts, es sei denn, Sie geben ein Feld in einer Tabelle oder einen Ausdruck in Klammern anstelle von konstanten Werten oder *
anLassen Sie mich Ihnen eine ausführliche Antwort geben. Count gibt Ihnen eine Datensatznummer ungleich Null des angegebenen Felds. Angenommen, Sie haben eine Tabelle namens A
select 1 from A
select 0 from A
select * from A
geben alle die gleiche Anzahl von Datensätzen zurück, d. h. die Anzahl der Zeilen in Tabelle A. Die Ausgabe ist jedoch unterschiedlich. Wenn es 3 Datensätze in der Tabelle gibt. Mit X und Y als Feldnamen
select 1 from A will give you
1
1
1
select 0 from A will give you
0
0
0
select * from A will give you ( assume two columns X and Y is in the table )
X Y
-- --
value1 value1
value2 (null)
value3 (null)
Alle drei Abfragen geben also dieselbe Zahl zurück. Es sei denn, Sie verwenden
select count(Y) from A
Da es nur einen Nicht-Null-Wert gibt, erhalten Sie 1 als Ausgabe