У меня есть база данных, которая была перенесена в новую схему. У старой базы данных нет ссылочной целостности, поэтому мне нужно избавиться от множества дубликатов.Поиск дубликатов строк и связанных записей
У меня есть таблица RegisteredVehicles
:
id | plate | state
# | 1425 | il
# | 3322 | il
и таблица ParkingRequests
:
id | date | registeredVehicleId (FK)
# | 2/2/12 | #
relatoinship является один ко многим - один зарегистрированный автомобиль для многих запросов.
Следующий запрос возвращает мне каждую повторяющуюся запись по Plate
и State
, а также выводит каждый RegisteredVehicle's
Id.
select Id, Plate, [State] from RegisteredVehicles where Plate in (
select plate from RegisteredVehicles group by Plate having count(*) > 1
)
Что дает мне что-то вроде этого
Id Plate State
036d59f1-d928-40f2-b373-049122202bff 0000000 IL
615e2fab-8b43-4e42-b6f0-268038bba949 0000000
Я пытаюсь получить количество запроса парковки в каждой строке транспортного средства возвращенного в вышеуказанном блоке кода. Что-то вроде этого
Id | Plate | State | # Requests
1 | 222 | IL | 2
2 | 333 | IL | 4
Но у меня проблемы с запросом более сложным, чем это уже есть. Это заняло у меня довольно много времени, чтобы работать.