Att lägga till GROUP BY-satsen är mycket effektivt i de flesta fall
- Ett aggregatfunktionsfel i SQL uppstår när du försöker använda en aggregatfunktion på ett sätt som inte stöds av SQL-språket.
- Du kan uppleva felet om du inte grupperar data efter kolumnen där du använder aggregatfunktionen.
XINSTALLERA GENOM ATT KLICKA PÅ LADDA FILEN
- Ladda ner Fortect och installera det på din PC.
- Starta verktygets skanningsprocess för att leta efter korrupta filer som är källan till ditt problem.
- Högerklicka på Starta reparation så att verktyget kunde starta fixeringsalgoritmen.
- Fortect har laddats ner av 0 läsare denna månad.
Att skriva SQL-skript kan vara roligt tills du stöter på buggar och fel i din kod. A få av våra läsare har klagat på felmeddelandet din fråga inkluderar inte det angivna uttrycket som en del av en aggregerad funktion.
Den aggregerade funktionen kan vara knepig, men vi kommer att lösa det i den här guiden. Du kan dock kolla in vår andra guide om din Exekvering av SQL Server-fråga misslyckades för en datauppsättning.
Varför får jag felet att din fråga inte innehåller det angivna uttrycket som en del av en aggregerad funktion?
Något av följande kan vara orsaken till att du får felet:
- Du använder ett uttryck som inte är en aggregerad funktion.
- Databasmotorn kan inte gruppera raderna eftersom den inte finns i GROUP BY-satsen.
- Du lägger uttrycket i GROUP BY-satsen, men din kolumn ligger inte under SELECT-satsen.
Du bör konsultera vår andra guide om du har svårigheter att logga in på Microsoft SQL Server.
Hur fixar jag att din fråga inte inkluderar det angivna uttrycket som en del av en aggregerad funktion?
Använd GROUP BY-satsdelen och aggregatfunktionen
- Definiera VÄLJ uttalande med hjälp av skriptet nedan.
VÄLJ
Land,
FRÅN
kunder
- Lägg till den aggregerade funktionen med hjälp av skriptet nedan (du måste anpassa det efter ditt specifika behov).
COUNT(customer_id) AS number_of_customers
- Lägg till GRUPP AV klausul. I skriptet nedan vill vi räkna antalet kunder i varje land i en tabell. Genom att använda GROUP BY kommer databasen att räkna och returnera rätt siffra.
GRUPP AV
Land; - Kör skriptet och kontrollera att det åtgärdar att din fråga inte inkluderar det angivna uttrycket som en del av en aggregerad funktion.
Genom att gruppera raderna innan de aggregerade funktionerna tillämpas, gör GROUP BY-satsen det möjligt för databasmotorn att förstå hur man kombinerar posterna och ger rätt resultat.
Vilka är de 5 aggregerade funktionerna i SQL?
I SQL kan du kanske använda någon av följande aggregatfunktioner:
- RÄKNA()
- BELOPP()
- AVG()
- MIN()
- MAX()
Men när du använder någon av ovanstående aggregerade funktioner, kom ihåg följande extra överväganden:
- Du kan bara använda aggregerade funktioner på kolumner med numeriska data.
- På kolumner som är en del av en GROUP BY-sats, fungerar inte aggregerade funktioner.
- En kolumn som också är en del av SELECT-listan visas i resultaten som ett enda värde om du använder en aggregerad funktion på den.
- Fix: Detta värde stämmer inte överens med datavalideringen
- Vad är MMSSHost.exe & hur åtgärdar man dess höga minnesanvändning?
- Den mappade nätverksenheten kunde inte skapas [Felkorrigering]
Där har du det. Du bör nu förstå varför du fick felet, och genom att anpassa våra lösningar bör du ha framgång.
Du kanske också är intresserad av våra andra guider, som reparera en skadad databas i SQL-serverlet.
Låt oss veta om du tyckte att den här guiden var användbar i kommentarsektionen nedan. Dessutom, om du har andra sätt att åtgärda felet, vill vi gärna höra från dig.
Har du fortfarande problem?
SPONSRAD
Om förslagen ovan inte har löst ditt problem kan din dator uppleva allvarligare Windows-problem. Vi föreslår att du väljer en allt-i-ett-lösning som Fortect för att lösa problem effektivt. Efter installationen klickar du bara på Visa&fix och tryck sedan på Starta reparation.