Hallo,
ich muss hier eine Suche optimieren. Die Datenbank sieht wie folgt aus
id | user_id | beruf | position | etc....
Die Sache ist natürlich, dass sich der User mehrere male darin befinden kann
Also:
user_id = 2
beruf = Söldner
position = Kugelfang
user_id = 2
beruf = Moderator
position = Chef
Nun starte ich die Suche wo eine bestimmte Person mal "Söldner" und "Chef" war. Mit einem einfachen SELECT ....AND... kommt natürlich nichts raus weil es zwei unterschiedliche Datensätze sind. Ein OR geht da auch nicht weil, es sollen nur die Personen zurückgeliefert werden, die alle Kriterien erfüllen.
Wenn es jetzt NUR zwei weitere Kriterien wären könnte ich das mit einem INNER JOIN lösen, aber es sind mehr und es können theoretisch auch mehr werden.
Hat da einer eine Idee für eine elegante Lösung?
Danke
ich muss hier eine Suche optimieren. Die Datenbank sieht wie folgt aus
id | user_id | beruf | position | etc....
Die Sache ist natürlich, dass sich der User mehrere male darin befinden kann
Also:
user_id = 2
beruf = Söldner
position = Kugelfang
user_id = 2
beruf = Moderator
position = Chef
Nun starte ich die Suche wo eine bestimmte Person mal "Söldner" und "Chef" war. Mit einem einfachen SELECT ....AND... kommt natürlich nichts raus weil es zwei unterschiedliche Datensätze sind. Ein OR geht da auch nicht weil, es sollen nur die Personen zurückgeliefert werden, die alle Kriterien erfüllen.
Wenn es jetzt NUR zwei weitere Kriterien wären könnte ich das mit einem INNER JOIN lösen, aber es sind mehr und es können theoretisch auch mehr werden.
Hat da einer eine Idee für eine elegante Lösung?
Danke
Kommentar