Sinds de 2 dagen regel reageer ik hier niet meer
Vraag
Beste antwoord (via CurlyMo op 05-05-2016 20:32)
Gewoon prima statement volgens mij. Op het moment dat er een kolom bar is, komen er eerst de records naar voren die niet voldoen aan 'bar = 1', want false, dus 0. Vervolgens de resultaten die daar wel aan voldoen, want true, dus 1.
Hetzelfde dat je kunt doen, eerst alle even nummers, met vervolgens de oneven nummers:
Hetzelfde dat je kunt doen, eerst alle even nummers, met vervolgens de oneven nummers:
code:
1
2
3
| select * from foo order by bar%2 |
Alle reacties
Een hele korte Google leert dat SQL conditionele order by constructies ondersteunt, dus Postgre zal het ook wel kunnen. Dat je dan een conditie invoert die niet uitmaakt is dan niet van belang.
Schiet mij maar lek 
Als ik zoek op SQL conditional order by dan kom ik inderdaad resultaten tegen waarbij je via case bepaalt op welke kolom er gesorteerd dient te worden, maar ik kom geen resultaten tegen waarbij er direct een kolom wordt vergeleken met een waarde (of andere kolom).
Als ik zoek op SQL conditional order by dan kom ik inderdaad resultaten tegen waarbij je via case bepaalt op welke kolom er gesorteerd dient te worden, maar ik kom geen resultaten tegen waarbij er direct een kolom wordt vergeleken met een waarde (of andere kolom).
Sinds de 2 dagen regel reageer ik hier niet meer
Gewoon prima statement volgens mij. Op het moment dat er een kolom bar is, komen er eerst de records naar voren die niet voldoen aan 'bar = 1', want false, dus 0. Vervolgens de resultaten die daar wel aan voldoen, want true, dus 1.
Hetzelfde dat je kunt doen, eerst alle even nummers, met vervolgens de oneven nummers:
Hetzelfde dat je kunt doen, eerst alle even nummers, met vervolgens de oneven nummers:
code:
1
2
3
| select * from foo order by bar%2 |
Kijk, zo simpel kan het zijn. Nooit geleerd, maar wel handig. Dank!Feanathiel schreef op donderdag 05 mei 2016 @ 20:15:
Gewoon prima statement volgens mij. Op het moment dat er een kolom bar is, komen er eerst de records naar voren die niet voldoen aan 'bar = 1', want false, dus 0. Vervolgens de resultaten die daar wel aan voldoen, want true, dus 1.
Hetzelfde dat je kunt doen, eerst alle even nummers, met vervolgens de oneven nummers:
code:
1 2 3 select * from foo order by bar%2
Sinds de 2 dagen regel reageer ik hier niet meer