Sql-запрос для возврата сопоставленных результатов на основе двух столбцов
Предположим, у меня есть таблица со следующими столбцами:
Id, ConnectionId, File, FileCreated int, int, varchar, DateTime
Пример Данных
Далее, предположим, что он заполнен несортированными данными, как показано ниже:
1, 3, "a.dat", 2018-05-16 13:53:40.008 2, 1, "b.dat", 2018-05-16 13:53:40.007 3, 3, "c.dat", 2018-05-16 13:53:40.009 4, 3, "z.dat", 2018-05-16 13:53:40.002 5, 3, "h.dat", 2018-05-16 13:53:40.003 6, 2, "ba.dat", 2018-05-16 13:53:40.004 7, 3, "zy.dat", 2018-05-16 13:53:40.005 8, 1, "f.dat", 2018-05-16 13:53:40.001 9, 1, "cd.dat", 2018-05-16 13:53:40.006
Как я могу запросить эти данные, чтобы набор данных вернул меня :
1. один ряд для каждого из соединений
2. упорядоченный во времени порядок возрастания
предполагаемые результаты
Результат, который я ищу, будет следующим:
(Примечание: я помещаю их в группы, чтобы вы могли видеть, что они возвращаются на основе ConnectionId first (например, group by maybe)).
8, 1, "f.dat", 2018-05-16 13:53:40.001 4, 3, "z.dat", 2018-05-16 13:53:40.002 6, 2, "ba.dat", 2018-05-16 13:53:40.004 5, 3, "h.dat", 2018-05-16 13:53:40.003 9, 1, "cd.dat", 2018-05-16 13:53:40.006 7, 3, "zy.dat", 2018-05-16 13:53:40.005 2, 1, "b.dat", 2018-05-16 13:53:40.007 1, 3, "a.dat", 2018-05-16 13:53:40.008 3, 3, "c.dat", 2018-05-16 13:53:40.009
Надеюсь, мой пример покажет вам, что они не строго основаны на времени и не строго основаны на connectionId. Это и то, и другое.
Что я уже пробовал:
select connectionid, fileCreated from Table group by connectionid, filecreated
Возвращает только 3 строки, но есть 9 строк, так что мой неверен.