Ik heb jullie hulp nodig want ik kom er zelf niet uit. Het volgende heb ik in de database tabel staan:
- id, omschrijving, type, datum
Ik wil nu een mysql query hebben die per type maximaal 1 record per dag ophaalt en het liefst het eerste record van die dag. Gesorteerd met de nieuwste datum bovenaan.
Er zijn maximaal 4 verschillende types. Het mogen gewoon 4 verschillende query's worden aangezien ik de data niet ga combineren.
Select * from tabel Where type = 1 ........
Alvast bedankt!
- Hulp nodig bij Query
-
09-11-2016, 08:58 #1
- Berichten
- 1.407
- Lid sinds
- 16 Jaar
Hulp nodig bij Query
-
In de schijnwerper
Commerciële berichten plaatsen? Het kan nu bij onze nieuwssites!AdvertentieruimteLinkvada.com Linkbuilding Platform: Direct linkbuilden op 60.000+ premium domeinenLinkpartnersLogo nodig? Nu 75,- ( ook andere grafische opdrachten )Freelance / WerkHQ permanente blog mogelijkheden met hoge DA, DR & traffic, verschillende branches!Linkpartners -
09-11-2016, 09:14 #2
- Berichten
- 446
- Lid sinds
- 12 Jaar
Re: Hulp nodig bij Query
PHP Code:SELECT * FROM tabel WHERE type = 1 AND datum = '.$datum.' ORDER BY id ASC LIMIT 1
-
09-11-2016, 09:16 #3
- Berichten
- 1.407
- Lid sinds
- 16 Jaar
Re: Hulp nodig bij Query
Dan is mijn uitleg denk ik niet helemaal duidelijk.. Bij bovenstaande krijg ik maar 1 record terug.. Ik wil alle records van een bepaalde type terug krijgen maar van elke dag maar 1.
-
09-11-2016, 09:19 #4
- Berichten
- 446
- Lid sinds
- 12 Jaar
Re: Hulp nodig bij Query
Hier kun je toch 4 queries van maken, of anders een GROUP BY maar dan wordt het wat gecompliceerder.
-
09-11-2016, 09:21 #5
- Berichten
- 1.407
- Lid sinds
- 16 Jaar
Re: Hulp nodig bij Query
Ja het moet een group by worden.. ik weet niet hoe dat precies werkt. Met 4x een query van wat jij hierboven poste krijg ik niet het gewenste resultaat.
-
09-11-2016, 11:24 #6
- Berichten
- 58
- Lid sinds
- 12 Jaar
Re: Hulp nodig bij Query
Opzich goed te doen.
Group by DAY(datum) HAVING type =1
Als je per type wilt kan je volgensmij ook het volgende gebruiken:
Group by type, DAY(datum)
Mocht je de minimale van de dag willen selecteren dan moet je gebruiken: select min(datum) as datum1
Mocht dit niet werken of kom je er niet uit let me know :)Laatst aangepast door JelleK : 09-11-2016 om 11:37
-
09-11-2016, 11:44 #764BitsWebhosting.EU
- Berichten
- 2.092
- Lid sinds
- 17 Jaar
Re: Hulp nodig bij Query
De reguliere manier om een max datum uit een reeks van datums te filteren per 'key' is onderstaande:
SELECT x1.* FROM tabel x1
WHERE x1.datum = (SELECT MAX(x2.datum) FROM tabel x2 WHERE x2.key = x1.key)
De 'key' is in dit geval representatief voor de groepering die je hebt in je database. Als het bv. datums per 'type' zijn dan zou je 'type' invullen waar nu 'key' staat.
-
09-11-2016, 11:54 #8
- Berichten
- 1.407
- Lid sinds
- 16 Jaar
Re: Hulp nodig bij Query
Bedankt allemaal! Met jullie reacties is het gelukt!
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