Vinzenz Mai: komplexere SQL-Abfrage, (Anfänger)

Beitrag lesen

Hallo Chuchan,

Ich würde das Ergebnis bekommen, theoretisch!, wenn ich 2 Abfragen formulieren würde, wobei die 2. nur die Ergebnismenge der 1. durchsuchen darf.

sorry, das verstehe ich nicht.

  1. SELECT feld_id FROM tabelle_1 WHERE feld_gruppe = A

Betrachtest Du das als tabelle_2?

  1. SELECT feld_x FROM [alle mit Gruppe=A in tabelle_2] WHERE feld_y LIKE suchwort

Wenn ja, es gibt die AND-Verknüpfung :-)

Am allerbesten ist es jedoch, wenn Du uns Deine Tabellen mit den relevanten Spalten kurz vorstellst, mit ein paar Beispieldatensätzen und daran zeigst, was Du gerne hättest.

[...] Dann ist es bestimmt (?) schneller, erst in der 1. Tabelle alle IDs zu einer Gruppe zu sammeln und nur diese dann in Tabelle2 nach einem Suchwort in (1, 2, 3) bestimmten Feld/ern (oder in allen Feldern) zu durchsuchen. (Oder nicht?)

Für soetwas verwendest Du entweder Joins oder Subselects. Deine MySQL-Version ist neu genug, um Subselects zu unterstützen. Normale Joins stellen auch kein Problem dar, erst wenn es zu komplexeren Join-Operationen kommt, versagt MySQL 4.1.x.

Ich empfehle Dir zu Joins zwei Artikel:

Einführung Joins
Fortgeschrittene Joins

Freundliche Grüße

Vinzenz