[SQL] JOIN troubles (part heel veel)

Pagina: 1
Acties:

  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 13-09 23:09
Hoi allemaal..

Ik zit al heel lang te broeden op het volgende :

Voor een rapportagesysteem houd ik van winkels bij wat hun voorraden per artikel per dag zijn. Aangezien het 7000 artikelen zijn en 50 winkels loopt het aantal rows in de database erg snel op (350000 per dag). Dat is teveel dus heb ik besloten om alleen voorraden <> 0 op te slaan en ervanuit te gaan dat als een regel (winkel/dag) niet bestaat dat de voorraad 0 is (logisch toch ?)

[tabelstructuur]
code:
1
2
3
4
5
tabel stocks (shop_id, date, artikel_id, amount)

tabel shops (id, name ....)

tabel artikelen (id, omschrijving, prijs ...)

Nu wil ik in een query het volgende als output hebben :
code:
1
(shop_id, name, artikel_id, amount)

Dit is niet zo moeilijk aangezien :
code:
1
2
3
4
SELECT id, name, artikel.id AS artikel_id, amount
FROM   shops LEFT JOIN 
        (artikelen LEFT JOIN stocks ON (artikelen.id = stocks.artikel_id)) AS artikeldata
         ON (shops.id = artikeldata.shop_id)

gewoon werkt.

Nu wil ik echter voor elk artikel en voor elke winkel gegevens hebben, dus een soort van 'default' value van 0

Uit de sql documentatie heb ik begrepen dat je dat dus met LEFT JOIN moet doen, maar ik krijg toch steeds alleen de regels terug waarvoor er wel een regel bestaan in de 'stocks' tabel.

Wie o wie !?

edit:
Sorry voor het verpieteren van de opmaak, maar zo is het leesbaarder denk ik :)

SIZE does matter.
"You're go at throttle up!"


  • kvdveer
  • Registratie: November 2000
  • Laatst online: 06-11-2025

kvdveer

Z.O.Z.

Ahhh.. de FULL OUTER JOIN... geinig... die is er niet in MySql.

Localhost, sweet localhost


  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 13-09 23:09
heb jij mij MYSQL horen zeggen ???? :)

Voor de verandering gebruik ik dat voor dit projectje eens NIET >:)


Oftewel kan je me daar wat meer over zeggen ?

SIZE does matter.
"You're go at throttle up!"


  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Op woensdag 09 januari 2002 15:35 schreef kvdveer het volgende:
Ahhh.. de FULL OUTER JOIN... geinig... die is er niet in MySql.
Zullen we om het simpel te houden eens een topic gaan maken over zaken die wel werken in MySql >:)

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

raptorix:
Zullen we om het simpel te houden eens een topic gaan maken over zaken die wel werken in MySql >:)
RTFM >:) :D ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 13-09 23:09
Ook niet off-topic..


Dat FULL OUTER JOIN doet het ook niet zoals ik wil hoor.. Maybe andere suggesties ?

SIZE does matter.
"You're go at throttle up!"


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

schreef Skinny:
Ook niet off-topic
sorry O-)
* kruipt schuldbewust weg in een hoekje

Als ik een oplossing had geweten had ik het je graag verteld, maar helaas ben ik alleen (goed) bekend met MySQL

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1