MySQL group op datum, meerdere jaren uniek

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • beerten
  • Registratie: Juni 2003
  • Laatst online: 28-09 13:56
Hoi,

ik wil de gemiddelde waardes selecteren, per dag, over meerdere jaren. Ieder kwartier is er een meetwaarde.

Met onderstaande query krijg ik de gemiddelde waarde per datum. Maar de verschillende jaren worden ook meegegroepeert.
Het berekent de gemiddelde waarde van zeg 3 mei 2017, 2018, 2019 en 2020 als 1 waarde.
Ik wil een doorlopende reeks. Alle jaren, alle datums achter elkaar.

Wat doe ik fout? Hoe luidt de juiste query?

PHP/MySQL

code:
1
2
3
4
5
SELECT DATE(datum) datums, avg(kz) kz, avg(ms) ms, avg(kds) kds, avg(zz) zz
FROM data_analyses
WHERE datum between '".$start."' and '".$end."'
GROUP BY date(datum)
ORDER by datums ASC

Alle reacties


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Wat is datum voor type? Want als dat date of datetime is zou 't gewoon moeten werken :? Heb je voorbeelddata?

[ Voor 34% gewijzigd door RobIII op 12-10-2020 18:00 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Gien
  • Registratie: Oktober 2011
  • Laatst online: 12-09 21:12
Iets verder geknutseld. Zie hier

WHERE datum between '".$datum['start']."' and '".$datum['einde'] ."'
Waar $datum['start'] en $datum['einde'] de exacte datum invoer moeten zijn.

Als je een wat meer algemene datum wil selecteren zul je iets creatiever moeten zijn. Misschien legt deze website dat wat beter uit

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Het idee van een testcase is dat je versimpelt, naar de essentie gaat. Meer velden, een where clause etc. voegen niets toe in dit geval en vertroebelen de zaak alleen maar.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • beerten
  • Registratie: Juni 2003
  • Laatst online: 28-09 13:56
Ik zou nu spreekwoordelijk met de billen bloot moeten. Dat zal ik jullie besparen ;)
Het werkt gewoon. De opgehaalde dataset is helemaal niet het probleem. De grafiek, maar bovenal mijn duffe hoofd...

Dank. Zonder de opmerking "het zou moeten werken" had ik niet 2 keer gekeken.

Excuus en dank.

Voor de volledigheid toch een tabel met enkele rijen data

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
CREATE TABLE `data_analyses` (
  `id` int(11) NOT NULL,
  `datum` datetime NOT NULL,
  `kz` mediumint(7) DEFAULT NULL,
  `kds` mediumint(7) DEFAULT NULL,
  `ms` mediumint(7) DEFAULT NULL,
  `zz` mediumint(7) DEFAULT NULL,
  `totaal` mediumint(7) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Dumping data for table `data_analyses`
--

INSERT INTO `data_analyses` (`id`, `datum`, `kz`, `kds`, `ms`, `zz`, `totaal`) VALUES
(1, '2020-10-03 11:45:00', 30981, 14974, 10188, 22626, 78769),
(4, '2020-10-03 00:00:00', 0, 0, 0, 0, 0);

Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
Gien schreef op maandag 12 oktober 2020 @ 21:39:
Iets verder geknutseld. Zie hier

WHERE datum between '".$datum['start']."' and '".$datum['einde'] ."'
Ben je nu serieus SQL aan elkaar aan 't concatenaten?

https://niels.nu


Acties:
  • 0 Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Hydra schreef op dinsdag 13 oktober 2020 @ 10:00:
[...]


Ben je nu serieus SQL aan elkaar aan 't concatenaten?
Dynamic sql... de nieuwste rage... (Nadat het 20 jaar geleden uit de mode is geraakt)

Acties:
  • 0 Henk 'm!

  • The Eagle
  • Registratie: Januari 2002
  • Laatst online: 22:37

The Eagle

I wear my sunglasses at night

DevOps, alles in code, dan krijg je dat :P

Maar fijn dat het werkt :)

Al is het nieuws nog zo slecht, het wordt leuker als je het op zijn Brabants zegt :)

Pagina: 1