0

基本的に各ユーザーのアクティビティ ログであるテーブルがあり、ユーザーの最後のアクティビティからの経過時間を表示したいと考えています。

クエリ:

SELECT message_log.log_phone_number, message_log.log_updated
FROM message_log
WHERE message_log.log_mode = “inbound”
GROUP BY  message_log.log_phone_number

結果

415407XXXX  2012-03-07 13:34:14      
434242XXXX  2012-03-07 16:00:42          
434465XXXX  2012-03-07 14:49:15          
434989XXXX  2012-03-07 15:30:22          
757615XXXX  2012-03-07 15:30:54          
804651XXXX  2012-03-07 14:13:04          
920917XXXX  2012-03-07 15:11:28

問題: 結果に最も古いタイム スタンプが表示されるので、最新のタイム スタンプが必要です。ORDER内に何か方法はありGROUP BYますか?

4

2 に答える 2

3
SELECT message_log.log_phone_number, max(message_log.log_updated) 
FROM message_log 
WHERE message_log.log_mode = “inbound” 
GROUP BY message_log.log_phone_number
于 2012-05-02T12:50:11.917 に答える
2

MAX() だけが必要です。

SELECT message_log.log_phone_number, 
MAX(message_log.log_updated) as log_updated
FROM message_log
WHERE message_log.log_mode = “inbound”
GROUP BY  message_log.log_phone_number
于 2012-05-02T12:50:41.267 に答える