Duplicaat van
Is er enig verschil tussen GROUP BY en DISTINCT
Het is hier al besproken
Als je hier nog wilt luisteren
Goed groeperen op en onderscheiden heeft zijn eigen gebruik.
Distinct wordt gebruikt om unieke records te filteren uit de records die voldoen aan de zoekcriteria.
Group by-clausule wordt gebruikt om de gegevens te groeperen waarop de statistische functies worden geactiveerd en de uitvoer wordt geretourneerd op basis van de kolommen in de group by-clausule. Het heeft zijn eigen beperkingen, zoals alle kolommen die in de selectiequery staan, afgezien van de aggregatiefuncties, moeten deel uitmaken van de Group by-clausule.
Dus hoewel u dezelfde gegevens kunt laten retourneren per afzonderlijke en groep voor clausule, is het beter om onderscheiden te gebruiken. Zie onderstaand voorbeeld
select col1,col2,col3,col4,col5,col6,col7,col8,col9 from table group by col1,col2,col3,col4,col5,col6,col7,col8,col9
kan worden geschreven als
select distinct col1,col2,col3,col4,col5,col6,col7,col8,col9 from table
Het maakt je leven gemakkelijker als je meer kolommen in de selectielijst hebt. Maar tegelijkertijd als u sum(col10) samen met de bovenstaande kolommen moet weergeven, moet u Group By gebruiken. In dat geval werkt duidelijk niet.
bijv.
select col1,col2,col3,col4,col5,col6,col7,col8,col9,sum(col10) from table group by col1,col2,col3,col4,col5,col6,col7,col8,col9
Ik hoop dat dit helpt.