Ich versuche, eine Suche mit der folgenden Abfrage auszuführen:durch verknüpften Tabellen Suche zeigt nur Streichhölzer Daten aus einer Tabelle
SELECT
*
FROM
question_index
JOIN
question_content
ON question_index.id = question_content.question_id
WHERE
question_index.remove = '0' AND
question_index.active = '1' AND
question_index.publish_date <= '$current_time' AND
(
question_index.question LIKE '%$keyword%' OR
question_content.text LIKE '%$keyword%'
)
GROUP BY
question_index.id
ORDER BY
question_index.publish_date DESC
Was will ich tun für die Suche durch die beiden Tabellen und Anzeige laufen Ergebnisse, die entweder "question_index.question" oder "question_content.text" entsprechen
Aber im Moment werden nur die Ergebnisse angezeigt, die mit "question_content.text" übereinstimmen. Ich habe versucht, "question_content.text LIKE '% $ keyword%' zu entfernen, aber es werden überhaupt keine Ergebnisse angezeigt. Die einzige Möglichkeit, Ergebnisse zu erhalten, die mit "question_index.question" übereinstimmen, ist, wenn ich den Join alle zusammen entferne. Aber das ist nicht das Ergebnis, das ich will.
Da Sie nur 'Join' haben, machen Sie standardmäßig einen' inneren' Join, was bedeutet, dass Sie Ergebnisse erhalten, wenn Datensätze auf BEIDE Seiten des Joins existieren. Wenn Sie alle Datensätze von einer Seite haben möchten, auch wenn auf der anderen Seite keine Übereinstimmungen vorhanden sind, müssen Sie einen 'linken Join' oder' rechten Join' verwenden. –
Linke Verbindung funktioniert! Bitte senden Sie es als Antwort und ich werde es akzeptieren, thx! –