Я работаю с базой данных, на которой написано несколько машин, каждая машина идентифицируется столбцом с именем ControllerID, поэтому, например, у одной машины может быть идентификатор контроллера 20, а один может быть 30 extsql server query with multiple where is
Что я хочу сделать, так это для каждой машины получить прошедшее время между последним чтением и сейчас. Это то, что я в настоящее время:
SELECT TOP (1) controllerID, convert(Datetime,ReaderTime), DATEDIFF(SECOND,dtReading,GETDATE())
FROM ReaderData
WHERE (controllerID = '30') AND (CardID = 'FFFFFFF0 ')
ORDER BY ReaderIndex DESC
Это получает истекшие секунды между последним чтения и теперь, но если я ставлю и (ControllerID = «Другого ID»), очевидно, что не будет работать, как и OR также не работает как он просто выбирает последний, как я могу это достичь?
Это работает отлично спасибо, На стороне записки, если я хотел сравнить последние 2 записей для каждого ControllerID, как я мог бы сделать это, так что DtReading из последних записей минус Dtreading из записей, прежде чем получить прошедшее время между записями? –
@JoshKirkpatrick См. Обновленный ответ. –