MYSQL + PHP - Ganzen Wert filtern, aber wie !?

Sebigf

Erfahrenes Mitglied
Hallo zusammen!

Es geht um folgendes...

Ich habe mit php einträge in der SQL DB vorgenommen. Dabei kann man mehrere IDs (kategorien) wählen. Diese werden mit dem Trennzeichen "::" gespeichert.

Beispiel: Ich wähle beim eintragen 3 Kategorien (IDs) aus -> 3::15::22

Passend zu den einträgen will ich eine Übersicht basteln, welche alle einträge von 3,15 und 22 ausgibt. Also eine tabelle mit 3 zeilen. Soweit so gut, aber WIE mache ich das mit dem auslesen ?

Ich habe das mit LIKE probiert, nur das problem ist, wenn ich eine Kategorie habe die "18" als ID hat und eine mit "188", dann würden sich die ergebnisse überschneiden. Deswegen frage ich mich, wie kann ich das am besten handhaben, damit eine solche überschneidung nicht stattfinden kann !?

Danke
 
Sebigf hat gesagt.:
Ich habe mit php einträge in der SQL DB vorgenommen. Dabei kann man mehrere IDs (kategorien) wählen. Diese werden mit dem Trennzeichen "::" gespeichert.

Beispiel: Ich wähle beim eintragen 3 Kategorien (IDs) aus -> 3::15::22
bitte nicht falsch verstehen, aber *autsch*
Begründung:
deine Datenbank verstößt gegen jegliche Art von Normalsierung. Um genau zu sein schon gegen die 1. Normalform.
Du sollst hier eigentlich eine weitere Tabelle mit 1:n Beziehung zu der bereits existierenden Tabelle anlegen in der du für jede assoziierte Kategorie einen Datensatz anlegst.
Wenn du das hast, kannst du auch viel einfacher deine Suche absetzten.
 
Zurück