sql >> Database teknologi >  >> RDS >> Sqlserver

Advarsel:Nulværdi er elimineret af en samlet eller anden SET-handling i Aqua Data Studio

Du ville for det meste bruge COUNT at opsummere over et UID. Derfor

COUNT([uid]) vil frembringe advarslen:

mens det bruges med en venstre join, hvor det talte objekt ikke eksisterer.

Bruger COUNT(*) i dette tilfælde ville det også give forkerte resultater, da du så ville tælle det samlede antal resultater (dvs. forældre), der findes.

Bruger COUNT([uid]) ER en gyldig måde at tælle på, og advarslen er ikke andet end en advarsel. Men hvis du er bekymret, og du ønsker at få et sandt antal uids i dette tilfælde, kan du bruge:

SUM(CASE WHEN [uid] IS NULL THEN 0 ELSE 1 END) AS [new_count]

Dette ville ikke tilføje en masse overhead til din forespørgsel.(testet mssql 2008)



  1. Hvorfor kommer resultater fra en SQL-forespørgsel ikke tilbage i den rækkefølge, jeg forventer?

  2. Dvale fejl:aktuelle transaktion afbrydes, kommandoer ignoreret indtil slutningen af ​​transaktionsblok

  3. Kan jeg løse dette med ren mysql? (sammenføjning på '' adskilte værdier i en kolonne)

  4. Autofuldførelse ved hjælp af Flask, Jquery, Javascript, MySQL