Hallo allemaal,
Heb mezelf weer in een te ingewikkelde query gewerkt ;-) De query komt uit een apotheek voorraad systeem en heeft vrij veel artikelen. Bepaalde artikelen zijn weer gekoppeld aan een voorschrift.
Misschien dat hij eenvoudiger kan en zijn alle aanvullingen meegenomen. De DISTINCT zit er op omdat er dubbele resultaten uit de tabel 'voorschriften' komen.
Heb mezelf weer in een te ingewikkelde query gewerkt ;-) De query komt uit een apotheek voorraad systeem en heeft vrij veel artikelen. Bepaalde artikelen zijn weer gekoppeld aan een voorschrift.
Misschien dat hij eenvoudiger kan en zijn alle aanvullingen meegenomen. De DISTINCT zit er op omdat er dubbele resultaten uit de tabel 'voorschriften' komen.
PHP:
1
| SELECT DISTINCT voorschrift.cfApotheek, voorschrift.component, voorschrift.recipesoort, voorschrift.soortInstelling, voorschrift.indicatieVervallen, voorschrift.T950tariefcode, apotheekArtikel.inkoopPrijs, apotheekArtikel.apotheekId, apotheekArtikel.artikelnummer, apotheekArtikel.ziNummer, artikel.etiketNaam, artikel.productGroep, artikel.hoeveelheidPerVerpakking, apotheekArtikel.voorraadWaarde, apotheekArtikel.laatsteInventarisatiedatum, apotheekArtikel.laatsteAfleverdatum, apotheekArtikel.laatsteBesteldatum, apotheekArtikel.laatsteOntvangstdatum, apotheekArtikel.datumLaatsteVoorschrift, DATEDIFF (NOW(), laatsteInventarisatiedatum) AS aantalDagenInventarisatiedatum, DATEDIFF (NOW(), laatsteAfleverdatum) AS aantalDagenAfleverdatum, DATEDIFF (NOW(), laatsteBesteldatum) AS aantalDagenBesteldatum, DATEDIFF (NOW(), laatsteOntvangstdatum) AS aantalDagenOntvangstdatum, DATEDIFF (NOW(), datumLaatsteVoorschrift) AS aantalDagenLaatsteVoorschrift, ( voorraadHoeveelheid / `hoeveelheidPerVerpakking` ) as aantalVerpakkingen FROM apotheekArtikel LEFT JOIN artikel ON artikel.artikelnummer = apotheekArtikel.artikelnummer LEFT JOIN voorschrift ON (voorschrift.artikelnummer = apotheekArtikel.artikelnummer AND voorschrift.apotheekId = apotheekArtikel.apotheekId AND voorschrift.afleverdatum = apotheekArtikel.laatsteAfleverdatum) WHERE ((apotheekArtikel.laatsteAfleverdatum = '0000-00-00' AND apotheekArtikel.laatsteOntvangstdatum <= '2016-09-14' ) OR (apotheekArtikel.laatsteAfleverdatum != '0000-00-00' AND apotheekArtikel.laatsteAfleverdatum <= '2016-09-14' )) AND apotheekArtikel.dateModified >= '2016-12-26' AND apotheekArtikel.artikelStatus = 'actief' AND (apotheekArtikel.datumLaatsteVoorschrift = '0000-00-00' OR apotheekArtikel.datumlaatsteVoorschrift <= '2016-09-14') AND (voorschrift.indicatieVervallen IS NULL OR voorschrift.indicatieVervallen != 'D') AND (voorschrift.soortInstelling IS NULL OR voorschrift.soortInstelling != 'B') AND (voorschrift.cfApotheek IS NULL OR voorschrift.cfApotheek != 'cf') AND (voorschrift.recipeSoort IS NULL OR voorschrift.recipeSoort != '2') ORDER BY apotheekArtikel.voorraadWaarde DESC; |