у меня одна таблица
Мне нужно вернуть все столбцы для строк, где 4 столбца наблюдаются более одного раза.
У меня есть большая таблица с данными, имеющими уникальный идентификатор, несколько столбцов, которые вместе могут повторяться, а затем либо 2018, либо 2019 год, как год, когда мы получили данные:
ID - Name - ZIP - Phone - Year Recorded
4234 | John | 56473 | 555-555-555 | 2018
4234 | Tod | 73746 | 556-556-556 | 2018
4235 | John | 56473 | 555-555-555 | 2019
4236 | Mary | 47384 | 577-577-577 | 2019
Я хочу выбрать * из [таблицы], где Имя, ZIP, Телефон повторяются, а год - 2019:
4235 | John | 56473 | 555-555-555 | 2019
Я использовал следующее, чтобы хотя бы показать пару столбцов для всех строк, для которых эти столбцы одинаковы:
SELECT `Name`, `ZIP`, `Phone`, COUNT(*)
FROM VULNS
GROUP BY `Name`, `ZIP`, `Phone`
HAVING COUNT(*) > 1
John | 56473 | 555-555-555 | 2
Проблема в том, что мне нужно указать ID и год записи, но я не могу их включить, потому что их нет в GROUP BY. Если я включу эти столбцы в GROUP BY, то все будет уникальным и я не получу результатов.
Прошло много времени с тех пор, как я интенсивно использовал SQL, и я думаю, что подхожу к этому неправильно.