MySQL Query, group by, а затем упорядочивает по последнему слову с условием

У меня есть этот код, который группирует сообщение в соответствии с идентификатором зарегистрированного пользователя. Код отлично работает, как есть. Но теперь я хочу внести некоторые изменения, которые я не знаю, чтобы реализовать

мой код запроса

$query_messages = mysqli_query($link,"SELECT PreQuery.*, m2.message, m2.senderID, m2.receiverID from ( SELECT if( m.senderID < m.receiverID, m.senderID, m.receiverID ) as Person1, if( m.senderID < m.receiverID, m.receiverID, m.senderID ) as Person2, max( m.messageID ) as LastMessageIDPerChat, max( m.date ) as LastMessageDate FROM messages m WHERE '$user' IN ( senderID, receiverID ) GROUP BY Person1, Person2 ORDER BY m.date ASC LIMIT 10 ) PreQuery JOIN messages m2 on PreQuery.LastMessageIDPerChat = m2.messageID ORDER BY date DESC"); $row_messages = mysqli_fetch_assoc($query_messages); $totalRows_messages = mysqli_num_rows($query_messages); 

Структура БД

введите описание изображения здесь

Краткое объяснение

Допустим, * переменная зарегистрированного пользователя – $ user

В базе данных пользователь может либо быть идентификатором отправителя, либо идентификатором приемника

Когда пользователь $ удаляет свой разговор, его сообщения обновляются от 0 до 1 в столбце senderdelete или в столбце receiverdelete *

Были проблемы: –

Я хотел бы изменить код запроса MySQLI и добавить его в запрос

 if $user is the sender then senderdelete should be value 0 

А ТАКЖЕ

 if $user is the receiver then receiverdelete should be value 0 

Любая помощь?

Я добавил это в предложение where и, похоже, работает

 WHERE '$myid' IN ( senderID ) AND senderdelete = 0 OR '$myid' IN ( receiverID ) AND receiverdelete = 0 

Полный обновленный код

  $query_messages = mysqli_query($link,"SELECT PreQuery.*, m2.message, m2.senderID, m2.receiverID, m2.senderdelete, m2.receiverdelete from ( SELECT if( m.senderID < m.receiverID, m.senderID, m.receiverID ) as Person1, if( m.senderID < m.receiverID, m.receiverID, m.senderID ) as Person2, max( m.messageID ) as LastMessageIDPerChat, max( m.date ) as LastMessageDate FROM messages m WHERE '$myid' IN ( senderID) AND senderdelete = 0 OR '$myid' IN ( receiverID) AND receiverdelete = 0 GROUP BY Person1, Person2 ORDER BY m.date ASC LIMIT 10 ) PreQuery JOIN messages m2 on PreQuery.LastMessageIDPerChat = m2.messageID ORDER BY date DESC"); $row_messages = mysqli_fetch_assoc($query_messages); $totalRows_messages = mysqli_num_rows($query_messages);