spocher102
Member
- Регистрация
- 22.01.2016
- Сообщения
- 13
Это таблица сообщений:
Требуется получить idm для пользователя с id=2, при таких условиях:
- последнее сообщение по времени, между двумя пользователями.
т.е. на выходе должны получиться idm со значениями 11,10,9,8,7
сейчас пока додумал только такой запрос:
SELECT idm, time FROM message WHERE idfrom="2" OR idto="2" GROUP BY idfrom,idto ORDER BY 2
но он выдает idm со значениями 11,9,8,5,4,1.
То есть в результат попадают idm, которые идут первые по счету в таблице, и поля с (idfrom=2, idto=3) он воспринимает отдельно от (idfrom=3, idto=2).
Как выполнить запрос, что бы получить заданные первоначально условия?
Требуется получить idm для пользователя с id=2, при таких условиях:
- последнее сообщение по времени, между двумя пользователями.
т.е. на выходе должны получиться idm со значениями 11,10,9,8,7
сейчас пока додумал только такой запрос:
SELECT idm, time FROM message WHERE idfrom="2" OR idto="2" GROUP BY idfrom,idto ORDER BY 2
но он выдает idm со значениями 11,9,8,5,4,1.
То есть в результат попадают idm, которые идут первые по счету в таблице, и поля с (idfrom=2, idto=3) он воспринимает отдельно от (idfrom=3, idto=2).
Как выполнить запрос, что бы получить заданные первоначально условия?