Ich habe 2 Tabellen: chat_table und message_table.
Ich möchte sehen, welche Zeilen countains von Chat-Tabelle + Nachricht und Zeit von message_table falls vorhanden.Wie mache ich einen Join, wo die letzte Tabelle auf 1 oder 0 begrenzt ist?
Derzeit erstellt diese Anweisung eine Ansicht, die den Chat mit der letzten Nachricht anzeigt und Chats ohne Nachrichten ignoriert.
Hot, um Chats ohne Nachrichten einzuschließen?
EDIT
Über LEFT JOIN
CREATE VIEW chat_view5 AS SELECT chat_table._id AS _id, chat_table.chat_id AS chat_id, chat_table.title AS title, chat_table.title_lower AS title_lower, chat_table.interlocutor_username AS interlocutor_username, chat_table.interlocutor_lastname AS interlocutor_lastname, chat_table.interlocutor_name AS interlocutor_name, chat_table.interlocutor_username_lower AS interlocutor_username_lower, chat_table.interlocutor_lastname_lower AS interlocutor_lastname_lower, chat_table.interlocutor_photo AS interlocutor_photo, chat_table.status AS status, chat_table.type AS type, chat_table.client_id AS client_id, message_table.message AS message, message_table.message_lower AS message_lower, message_table.time AS time FROM chat_table LEFT JOIN message_table ON chat_table.chat_id = message_table.chat_id LEFT JOIN ( SELECT chat_id, MAX(time) AS time FROM message_table GROUP BY chat_id) b ON b.chat_id = message_table.chat_id AND message_table.time = b.time
LEFT JOIN statt, wenn INNER JOIN, – jarlh
@jarlh whenewher i linken Seite kommen, insted ersten oder zweiten oder insted beide - ich mehr bekommen dann 1 Zeile pro Chat – Yarh