Tec*_*chy 3 php mysql sql distinct
我有一个名为sk_messages.It的结构如下:
msg_id msg_from_user_id msg_to_user_id msg_text msg_date msg_status
1 12 14 hai... 23-12-2013 unread
2 12 14 .... ... unread
3 13 14 ... .. unread
Run Code Online (Sandbox Code Playgroud)
我的要求是我想要显示当前用户的所有消息,条件是发送者应该显示单个消息,即使他发送了多条状态未读的消息.也就是说,从上面的上下文中,单个消息应该显示ID为12的用户.我尝试了以下查询,但它不起作用.
SELECT DISTINCT (msg_from_user_id), msg_text, msg_date
FROM sk_messages
WHERE msg_to_user_id = '$user_id'
AND msg_status = 'unread'
ORDER BY msg_date
$user_id is the id of the login user
Run Code Online (Sandbox Code Playgroud)
尝试group通过id用户.
SELECT msg_text, msg_date
FROM sk_messages
WHERE msg_to_user_id = '$user_id'
AND msg_status = 'unread'
GROUP BY msg_from_user_id
ORDER BY msg_dateRun Code Online (Sandbox Code Playgroud)
测试代码以获取最新消息
'SELECT * FROM ( SELECT * FROM message WHERE user_id = 1 ORDER BY created DESC LIMIT 1) as msg GROUP BY user_id 'Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15411 次 |
| 最近记录: |