Sobes.tech
Middle

Kāda ir atšķirība starp SELECT COUNT(*) un SELECT COUNT(column) FROM table?

sobes.tech AI

Atbilde no AI

Atšķirība starp SELECT COUNT(*) un SELECT COUNT(kolonna) SQL ir tajā, kuras rindas tiek skaitītas:

  • SELECT COUNT(*) FROM tabula — skaita visas rindas tabulā, ieskaitot tās, kurās kolonnās var būt NULL.

  • SELECT COUNT(kolonna) FROM tabula — skaita rindas, kurās norādītās kolonnas nav NULL.

Piemērs:

id vārds
1 Alice
2 NULL
3 Bob
  • SELECT COUNT(*) FROM tabula atgriezīs 3.
  • SELECT COUNT(vārds) FROM tabula atgriezīs 2, jo vienā ierakstā ir NULL vārda kolonnā.

Tādēļ COUNT(kolonna) ir noderīgs, ja vēlaties skaitīt tikai ne-NULL vērtības konkrētā kolonnā.