Dies wird mehrere Zeilen zurückgeben:MAX() kehrt nicht NULL Zeilen von LEFT JOIN
SELECT w.word_id, w.word_word, w.word_visits, w.word_created_unix, b.bid_per_visit
FROM keywords_words AS w
LEFT JOIN keywords_bids AS b
ON w.word_id = b.bid_word_id WHERE w.word_word LIKE 'an%'
ORDER BY w.word_visits DESC
LIMIT 10
Aber dies wird nur Zeilen zurück, wo es ein Gebot in keywords_bids ist:
SELECT w.word_id, w.word_word, w.word_visits, w.word_created_unix, MAX(b.bid_per_visit)
FROM keywords_words AS w
LEFT JOIN keywords_bids AS b
ON w.word_id = b.bid_word_id WHERE w.word_word LIKE 'an%'
ORDER BY w.word_visits DESC
LIMIT 10
Wie bekomme ich es, um die MAX(b.bid_per_visit)
wenn es ein Gebot gibt, und Null, wenn es keine Gebote gibt.
Nicht unbedingt Zeilen aus der ursprünglichen LIKE Suche im Grunde genommen.
Ihre zweite Abfrage gibt eine einzelne Zeile zurück – Mihai
Was ist die Gebotseinheit hier? –
@Mihai das ist was ich versuche zu vermeiden. Ich versuche, eine Liste der maximalen Gebote für verschiedene Keywords aus meiner keywords_words-Tabelle zu erhalten. –