Hallo,
ich habe 2 Tabellen
[COLOR=blue]daten[/COLOR]
->id
->z1
->z2
->z3
->z4
[COLOR=blue]temp[/COLOR]
->id
->g1
->g2
->g3
->g4
mit folgendem Inhalt
[COLOR=blue]daten[/COLOR]
1 | 1 | 2 | 3 | 4
2 | 2 | 3 | 4 | 5
3 | 3 | 4 | 5 | 6
4 | 6 | 7 | 8 | 9
[COLOR=blue]temp[/COLOR]
1 | 3 | 4 | 5 | 8
Ich möchte jede Zeile in daten mit den Inhalt aus temp überprüfen
(Übereinstimmungen zählen).
Es sollten nur die Zeilen angezeigt werden die 2 oder mehr übereinstimmungen haben.
Hier sollte dann folgendes rauskommen:
Zeile Treffer
=========================
1: 2
2: 3
3: 3
Bei meinem Query zählt er zwar richtig, jedoch nur in der ersten Spalte. Es liegt daran
das die Tabelle temp nur einen Eintrag hat. Hier der Code:
Was muss ich ändern, das alle 4 Einträge aus
der Tabelle daten mit dem Eintrag in der
Tabelle temp verglichen werden?
Danke für Eure Hilfe!
Mike
ich habe 2 Tabellen
[COLOR=blue]daten[/COLOR]
->id
->z1
->z2
->z3
->z4
[COLOR=blue]temp[/COLOR]
->id
->g1
->g2
->g3
->g4
mit folgendem Inhalt
[COLOR=blue]daten[/COLOR]
1 | 1 | 2 | 3 | 4
2 | 2 | 3 | 4 | 5
3 | 3 | 4 | 5 | 6
4 | 6 | 7 | 8 | 9
[COLOR=blue]temp[/COLOR]
1 | 3 | 4 | 5 | 8
Ich möchte jede Zeile in daten mit den Inhalt aus temp überprüfen
(Übereinstimmungen zählen).
Es sollten nur die Zeilen angezeigt werden die 2 oder mehr übereinstimmungen haben.
Hier sollte dann folgendes rauskommen:
Zeile Treffer
=========================
1: 2
2: 3
3: 3
Bei meinem Query zählt er zwar richtig, jedoch nur in der ersten Spalte. Es liegt daran
das die Tabelle temp nur einen Eintrag hat. Hier der Code:
PHP-Code:
$result=mysql_query("
SELECT daten.id AS id,
(IF(z1=g1 OR z1=g2 OR z1=g3 OR z1=g4, 1, 0) +
IF(z2=g1 OR z2=g2 OR z2=g3 OR z2=g4, 1, 0) +
IF(z3=g1 OR z3=g2 OR z3=g3 OR z3=g4, 1, 0) +
IF(z4=g1 OR z4=g2 OR z4=g3 OR z4=g4, 1, 0))
AS treffer
FROM daten LEFT JOIN temp ON temp.id=daten.id
");
while ($R = mysql_fetch_array($result)) {
echo "$R[id]: $R[treffer]\n";
}
der Tabelle daten mit dem Eintrag in der
Tabelle temp verglichen werden?
Danke für Eure Hilfe!
Mike
Kommentar