[php + mysql] optellen van waardes in een select

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik wil een query maken die de records teruggeeft waarvan het aantal uren groter is dan acht. Maar hij moet eigenlijk wel het aantal uren optellen als het dezelfde datum is (bv. die van 20030303)...

[tabel]

ID Uren Datum
1 14 20030328
1 6 20030301
1 4 20030303
1 3 20030303
1 2 20030303

[/tabel]

[query]
SELECT SUBSTRING( Datum, 7, 2 ), Uren
FROM urentabel
WHERE Uren >= 8 AND ID = '1' AND
MONTH (
Datum
) = '03'
[/query]

Maar dan worden de datums dus niet opgeteld. Eigenlijk zou je dus een count ofzo moeten doen? Of een select in een select, maar ik weet ff niet hoe dat zou moeten. Of moet ik een Union gebruiken?

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 08:24

gorgi_19

Kruimeltjes zijn weer op :9

Erhm.. Een SUM-functie icm met een Group BY Clausule?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
SELECT * , sum( Uren )
FROM uren_per_gebruiker
WHERE Uren >= 8 AND GebruikerID = '1' AND
MONTH (
Datum
) = ' 03'
GROUP BY Datum

Zoiets? Als ik dit doe krijg ik er maar 1 terug? Manual is een beetje onduidelijk over die SUM Functie moet ik zeggen

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 08:24

gorgi_19

Kruimeltjes zijn weer op :9

ERhm.. Ja? In de kolom uren is er toch ook maar 1 waarde groter dan 8?
Je moet nog iets van "Having Sum(uren) > 8 " er tussen frotten, voor de Group BY als je de geaggregeerde waarde wilt hebben.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

  • Kapoen
  • Registratie: Mei 2002
  • Laatst online: 10:51
Even google-en leverde dit op:

http://users.pandora.be/passero/visual/deel2.htm

Clowns to the left of me, Jokers to the right