-Cukier-
20.03.2013, 20:06:00
SELECT DISTINCT COUNT(*) AS RowsCount FROM tabela
dlaczego takie pytanie nie zwraca mi poprawnej ilości wierszy ?
SELECT COUNT( DISTINCT * ) w ten sposób zwraca błąd...
mmmmmmm
20.03.2013, 21:28:17
A wiesz co robi DISTINCT? Niejawne grupowanie po wszystkich elementach.
Czyli SELECT DISTINCT Count(*) powinno pogrupować wartości Count(*) (a ma ich jeden) i zwrócić wynik. Taki sam.
A DISTINCT * wewnątrz Count jest zakazany. (w ogóle powinien być zakazany, o ile ni jest).
id imie
1 ala
2 ola
3 ala
4 ula
SELECT Count(DISTINCT id) zwróci 4
SELECT Count(DISTINCT imie) zwródi 3
Randallmaster
20.03.2013, 23:00:10
dodaj group by aby distinct miało do czego się załapać
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.