Если вы хотите сделать заказ по StartTime, вам нужно будет использовать ROW_NUMBER
, чтобы вы могли выбрать поле времени начала:
SELECT machinename, StatusCode, size
FROM (
SELECT
machinename,
StatusCode,
StartTime
size,
ROW_NUMBER() OVER (PARTITION BY MachineID ORDER BY size DESC) AS rn
FROM machine
WHERE MachineID IN ('33','22')
AND StatusCode = 166
) T1
WHERE rn = 1
ORDER BY StartTime DESC
Но если вы хотите заказать по размеру, это проще:
SELECT machinename, StatusCode, MAX(size) AS size
FROM machine
WHERE MachineID IN ('33','22') AND StatusCode = 166
GROUP BY MachineID
ORDER BY MAX(size) DESC