phpbar.de logo

Mailinglisten-Archive

[php] Abfrage über Zwischentabelle

[php] Abfrage über Zwischentabelle

A. Sauder andre.sauder at netzwerkcenter.ch
Do Okt 6 10:54:36 CEST 2011


Hallo Trawell

Das SQL für deine Abfrage wäre:
SELECT tbl_artikel.*
FROM tbl_zuordnung
LEFT JOIN tbl_artikel ON tbl_artikel.id_artikel = 
tbl_zuordnung.id_artikel
WHERE tbl_zuordnung.shop = '99'
ORDER BY tbl_artikel.artikelname


Die Zuordnungstabelle ist an und für sich keine Schlechte Idee.
Es gibt da noch eine andere Lösung die du machen könntest:

  -----------------
  tbl_artikel
  -----------------
  id_artikel (pk)
  artikelname
  shop_id_liste   <-- Hier kommen, mit Komma getrennt, die ID der Shops 
rein (z.B. 12,45,99)
  -----------------

  -----------------
  tbl_shops
  -----------------
  id_shop (pk)
  shopname
  -----------------

Dadurch wäre die Abfrage dann:
SELECT tbl_artikel.*
FROM tbl_artikel
WHERE FIND_IN_SET('99', tbl_artikel.shop_id_liste) > 0
ORDER BY tbl_artikel.artikelname


Gruss André


Am 06.10.2011 10:44, schrieb Trawell Mildor:
> Hallo zusammen
>
> Als völliger Neuling in diesem Thema habe ich wieder mal ne Frage
>
> ich habe in MySQL drei Tabellen erstellt
>
>
> -----------------
> tbl_artikel
> -----------------
> id_artikel (pk)
> artikelname
> -----------------
>
>
> und hier die zweite Tabelle
>
> -----------------
> tbl_shops
> -----------------
> id_shop (pk)
> shopname
> -----------------
>
>
>
> So, und nun will ich ja Artikel mit Shops verknüpfen, ich meine, 
> jeder
> Artikel kann mehreren Shops zugeteilt werden, aber auch ein Shop kann
> mehrere Artikel haben.
>
> Also hab ich eine dritte Tabelle für die Zuordnung gemacht
>
> die sieht so aus
>
>
> -----------------
> tbl_zuordnung
> -----------------
> id_zuordnung (pk)
> id_artikel
> id_shop
> -----------------
>
>
> in dieser Tabelle würde dann halt stehen, Artikel 1 gehört zu Shop 3,
> Artikel 4 gehört zu Shop 99, Artikel gehört zu Shop 3 und so weiter.
>
> Wie sieht nun ein Abfrage Befehl aus, wenn alle Artikel von Shop 99 
> sehen
> will ?
>
> Verwende ich diesen Abfrage Befehl auch für ein Update, oder Insert ?
>
> Danke für Eure Hilfe im voraus
>
>
> Gruss, Trawell


php::bar PHP Wiki   -   Listenarchive