Goedemiddag,
Ik loop tegen een klein probleempje aan. Op mijn webshop hebben niet alle producten een prijs. Als er geen prijs bekend is staat deze op 0 (Op aanvraag).
Nu wil ik eerst de artikelen weergeven waarvan de prijs wel bekend is, vervolgens de producten waarvan er geen prijs bekend is (0).
De producten staan op prijs gesorteerd (laag - hoog). Resultaat nu is dat de producten met 0 bovenaan staan. Deze zou ik graag onderaan willen hebben.
Product1 150Code:SELECT ART_CODE_1, PRIJS, FROM tabel ORDER BY CAST(`onderdelen`.`PRIJS` AS DECIMAL(10,2)) ASC LIMIT 0 , 100
Product2 160
Product3 170
Product4 0
Product5 0
- Sorteren op prijs
-
08-01-2015, 12:58 #1Particulier
- Berichten
- 119
- Lid sinds
- 17 Jaar
Sorteren op prijs
-
In de schijnwerper
-
08-01-2015, 13:37 #2
- Berichten
- 449
- Lid sinds
- 14 Jaar
Re: Sorteren op prijs
--- knip
-
08-01-2015, 13:51 #3Particulier
- Berichten
- 153
- Lid sinds
- 13 Jaar
Re: Sorteren op prijs
Als je de foutief genoteerde onbekende prijs nou eens correct noteert: NULL.
Dan kun je met het volgende trucje het gewenste resultaat bereiken denk ik:
SELECT * FROM xx ORDER BY -price DESC
-
08-01-2015, 14:09 #4Particulier
- Berichten
- 1.412
- Lid sinds
- 15 Jaar
Re: Sorteren op prijs
Wil je ubderhaupt de 0 prijzen meenemen in de winkel? Zijn immers gratis artikelen.
Maar om antwoord te geven op je vraag. Gebruik een "case" in je order.
Code:SELECT ART_CODE_1, PRIJS, FROM tabel ORDER BY CASE WHEN PRIJS = 0 THEN 9999 ELSE PRIJS END ASC LIMIT 0 , 100
-
08-01-2015, 14:26 #5Particulier
- Berichten
- 153
- Lid sinds
- 13 Jaar
Re: Sorteren op prijs
TS geeft aan dat de prijzen onbekend zijn, niet nul. Vandaar mijn voorstel om ze te vervangen door NULL, de logische representatie van onbekend.
Daarna kun je de boel mooi sorteren hoe je ook wilt, zonder te hoeven terugvallen op een CASE oplossing. Deze is in potentie trager, maar verondersteld ook een maximum prijs van 9998 - wat gegegeven genoeg tijd, een keer mis gaat.
Anyhow, twee oplossingen - er valt wat te kiezen ^^
-
08-01-2015, 14:43 #6Particulier
- Berichten
- 119
- Lid sinds
- 17 Jaar
Re: Sorteren op prijs
Bedankt voor de snelle reacties. Beide oplossingen werken. Ik heb ervoor gekozen om inderdaad de prijzen te vervangen door NULL. Werkt perfect!
-
08-01-2015, 15:03 #7Particulier
- Berichten
- 1.412
- Lid sinds
- 15 Jaar
Re: Sorteren op prijs
TS geeft aan dat de prijzen onbekend zijn, niet nul. Vandaar mijn voorstel om ze te vervangen door NULL, de logische representatie van onbekend.
Daarna kun je de boel mooi sorteren hoe je ook wilt, zonder te hoeven terugvallen op een CASE oplossing. Deze is in potentie trager, maar verondersteld ook een maximum prijs van 9998 - wat gegegeven genoeg tijd, een keer mis gaat.
Anyhow, twee oplossingen - er valt wat te kiezen ^^
Maar inderdaad is de null oplossing inderdaad beter.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic