Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De COMPONENT ORDER IN GROUP wordt gebruikt in combinatie met de instructie GROUP ON, die resultatensets in groepen retourneert. Met de COMPONENT ORDER IN GROUP kunt u elke geretourneerde groep op een andere manier sorteren. Als u bijvoorbeeld groeperen op System.Kind, kunt u alle documenten sorteren op System.Document.LastAuthor, alle muziekbestanden op System.Music.AlbumArtist en alle e-mailberichten op System.Message.FromName.
Syntaxis
Hier volgt de syntaxis van de component ORDER IN GROUP:
GROUP ON <group column and optional ranges>
OVER (SELECT ... FROM SystemIndex
ORDER
IN GROUP '<group name>' BY <column> [<direction>] [,<column> [<direction>]]
[IN GROUP '<group name>' BY <column> [<direction>] [,<column> [<direction>]] ]
[BY <column> [<direction>] [,<column> [<direction>]] ])
De groepsnaamaanduiding is een bereik of een bekende waarde uit de groepskolom, zoals opgegeven in de INSTRUCTIE GROUP ON. Bekende waarden voor System.Photo.ISOSpeed bevatten bijvoorbeeld 'ISO-100', 'ISO-200', enzovoort. Een bereik voor System.Photo.DateTaken zou '2006-1-1' en '2007-1-1' bevatten voor een instructie zoals GROUP ON System.ItemDate ['2006-1-1', '2007-1-1'].
De kolomaanduiding moet een geldige kolom zijn die is opgegeven in de GROUP ON- of select-instructie. U kunt meer dan één kolom opnemen, gescheiden door komma's. Als u bijvoorbeeld groepeert op System.Photo.ISOSpeed, kunt u alle ISO-100 foto's sorteren, eerst op System.Photo.ShutterSpeed en vervolgens op System.Photo.Aperture.
De optionele richtingsaanduiding kan ASC zijn voor oplopend (laag tot hoog) of DESC voor aflopend (hoog tot laag). Als u geen richtingaanduiding opgeeft, wordt de standaardwaarde, oplopend, gebruikt. Als u meer dan één kolom opgeeft, maar niet alle richtingen opgeeft, wordt de richting die u als laatste opgeeft, toegepast op elke opeenvolgende kolom totdat u de richting expliciet wijzigt.
Bereiken of waarden die niet expliciet zijn opgegeven in een COMPONENT ORDER GROUP IN, worden in oplopende volgorde gesorteerd op de waarden in de kolom GROUP ON.
Voorbeelden
In het volgende voorbeeld worden resultaten gegroepeerd op basis van de eigenschap System.Kind. De query rangschikt de groep 'program' op de naam van de toepassing en de groep 'muziek' op albumtitel en nummer. De null- groep wordt geordend op de itemnaam. Alle andere groepen zouden op volgorde van de itemdatum worden uitgevoerd.
GROUP ON System.Kind
OVER (SELECT System.ItemUrl, System.Music.AlbumTitle, System.Music.TrackNumber, System.ItemName, System.ItemDate, System.Kind FROM SystemIndex
ORDER
IN GROUP 'program' BY System.ApplicationName ASC
IN GROUP 'music' BY System.Music.AlbumTitle ASC, System.Music.TrackNumber ASC
IN GROUP NULL BY System.ItemName
BY System.ItemDate DESC)
Het volgende voorbeeld groepeert resultaten op de eigenschap System.ItemDate en sorteert vervolgens elke groep op item-URL, soort of naam.
GROUP ON System.ItemDate ['2006-1-1', '2007-1-1', '2008-1-1']
OVER (SELECT System.ItemUrl, System.ItemName, System.ItemDate System.Kind FROM SystemIndex
ORDER
IN GROUP MINVALUE BY System.ItemUrl ASC
IN GROUP '2007-1-1' BY System.Kind
IN GROUP NULL BY System.ItemName)
De resultaten van de voorgaande query worden geretourneerd in vijf groepen en gesorteerd zoals beschreven in de volgende tabel.
| Groep | Beschrijving | Gesorteerd op |
|---|---|---|
| MINVALUE | Items met datums vóór 2006-1-1 | Gesorteerd op de URL van het item, in oplopende volgorde |
| 2006-1-1 | Items met datums op of na 2006-1-1, maar vóór 2007-1-1 | Gesorteerd op itemdatum, in oplopende volgorde |
| 2007-1-1 | Items met datums op of na 2007-1-1, maar vóór 2008-1-1 | Gesorteerd op soortwaarde, in oplopende volgorde |
| 2008-1-1 | Items met datums op of na 2008-1-1 | Gesorteerd op itemdatum, in oplopende volgorde |
| NULL- | Items zonder waarde in de kolom System.ItemDate | Gesorteerd op itemnaam, in oplopende volgorde |
Verwante onderwerpen