Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ograniczenie na left JOIN
tabbi
post
Post #1





Grupa: Zarejestrowani
Postów: 150
Pomógł: 3
Dołączył: 30.10.2010

Ostrzeżenie: (0%)
-----


Układ bazy jest jak: https://github.com/jrmadsen67/Mahana-Messag...ster/mahana.sql

Zapytanie:

  1. $sql = 'SELECT m.*, s.status, t.subject, '.USER_TABLE_USERNAME .
  2. ' FROM msg_participants p ' .
  3. ' JOIN msg_threads t ON (t.id = p.thread_id) ' .
  4. ' JOIN msg_messages m ON (m.thread_id = t.id) ' .
  5. ' JOIN ' .USER_TABLE_TABLENAME. ' ON ('.USER_TABLE_ID.' = m.sender_id) '.
  6. ' JOIN msg_status s ON (s.message_id = m.id AND s.user_id = ? ) ' .
  7. ' WHERE p.user_id = ? ' ;
  8. if (!$full_thread)
  9. {
  10. $sql .= ' AND m.cdate >= p.cdate';
  11. }
  12. $sql .= ' ORDER BY t.id '.$order_by. ', m.cdate '.$order_by;


Co chce zrobić to pobrać jedynie ostatnie wiadomości z danego wątku.

Więc zastępuje msg_messages dodatkowym selectem ale to nie działa !

  1. JOIN msg_messages m ON ( (SELECT b.thread_id FROM msg_messages AS b ORDER BY b.id DESC LIMIT 1) = t.id)' .
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.12.2025 - 08:26