Problem mit Joins

Problem mit Joins

am 26.02.2006 21:25:17 von stefan.glaesser

Hallo,

ich habe ein kleines Problem mit verknüpften Tabellen. Es handelt sich
um eine 1:n Beziehung zwischen den Tabellen products (1) und keywords (n).

Meine Abfrage schaut ungefähr so aus:

SELECT product.id, product.name, product.preis
FROM products
LEFT JOIN keywords ON keywords.id = products.id
WHERE preis <= 30
AND keywords.content like 'mysql%'

Dabei kann es jetzt vorkommen, dass in "content" mehrfach das Wort
"mysql" vorkommt. Als Ergebnis bekomme ich also z.B. das hier:

id name preis content
-------------------------------------------------------
100 Einführung in MySQL 29.90 mysql für dummies
100 Einführung in MySQL 29.90 mysql für idioten
100 Einführung in MySQL 29.90 mysql für klugscheisser

Wie schaffe ich es jetzt, die Ergebnisse auf eine Zeile
zusammenzustauchen? Mir reicht es, wenn ich den Artikel einmal gefunden
habe. Im Prinzip brauch ich die Ausgabe von "content" gar nicht. Ich
muss nur prüfen, ob das Wort "mysql" in "content" vorkommt.


Gruß,
Stefan

Re: Problem mit Joins

am 26.02.2006 21:37:08 von Knut Kohl

Stefan Gläßer schrieb am 26. Feb 2006 in de.comp.datenbanken.mysql:

> Hallo,

> ich habe ein kleines Problem mit verknüpften Tabellen. Es handelt sich
> um eine 1:n Beziehung zwischen den Tabellen products (1) und keywords (n).

> Meine Abfrage schaut ungefähr so aus:

> SELECT product.id, product.name, product.preis
> FROM products
> LEFT JOIN keywords ON keywords.id = products.id
> WHERE preis <= 30
> AND keywords.content like 'mysql%'

> Dabei kann es jetzt vorkommen, dass in "content" mehrfach das Wort
> "mysql" vorkommt. Als Ergebnis bekomme ich also z.B. das hier:

> id name preis content
> -------------------------------------------------------
> 100 Einführung in MySQL 29.90 mysql für dummies
> 100 Einführung in MySQL 29.90 mysql für idioten
> 100 Einführung in MySQL 29.90 mysql für klugscheisser

> Wie schaffe ich es jetzt, die Ergebnisse auf eine Zeile
> zusammenzustauchen? Mir reicht es, wenn ich den Artikel einmal gefunden
> habe. Im Prinzip brauch ich die Ausgabe von "content" gar nicht. Ich
> muss nur prüfen, ob das Wort "mysql" in "content" vorkommt.

Wenn Du content nicht brauchst:

SELECT DISTINCT product.id, product.name, product.preis
...

> Gruß,
> Stefan

Knut

--
Newsoffice.de - Die Onlinesoftware zum Lesen und Schreiben im Usenet

Re: Problem mit Joins

am 26.02.2006 21:45:10 von stefan.glaesser

Hallo Knut,

> SELECT DISTINCT product.id, product.name, product.preis

Danke, das zeigt das es Zeit für meinen Feierabend ist ;-)

Stefan