SQL выбрать заявление, выбрав минимальное значение метки времени - PullRequest
1 голос
/ 20 марта 2012

У меня есть данные, как показано ниже в таблице

NUM_SER           STATUS     TIMESTAMP             
----------------  ---------  --------------------- 
00000000000000d1  02         2/21/2012 12:24:13 PM 
00000000000000d1  05         2/21/2012 5:49:46 PM  
00000000000000d2  01         2/21/2012 11:05:36 AM  
00000000000000d2  05         2/21/2012 10:27:57 PM  
00000000000000d2  03         2/21/2012 4:55:13 PM  
00000000000000d3  02         2/21/2012 3:18:23 PM  
00000000000000d3  05         2/21/2012 7:02:09 PM  
00000000000000d3  02         2/21/2012 7:16:03 PM      

Я хочу выбрать оператор запроса, который выберет данные для каждого серийного номера с минимальным значением метки времени для выбранной даты,

поэтому ожидаемый результат при выборе даты 2012-02-21

NUM_SER           STATUS     TIMESTAMP             
----------------  ---------  --------------------- 
00000000000000d1  02         2/21/2012 12:24:13 PM     
00000000000000d2  01         2/21/2012 11:05:36 AM   
00000000000000d3  02         2/21/2012 3:18:23 PM      

как это можно сделать, я пытаюсь использовать min (TIMESTAMP), но получаю ошибку 'Неожиданный токен "END-OF-STATEMENT"'

1 Ответ

3 голосов
/ 20 марта 2012

Попробуйте это:

select * from t t1
left join t t2
on t1.num_ser = t2.num_ser and t1.timestamp > t2.timestamp
where t2.timestamp is null
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...