Поиск…


замечания

  • Чтобы выбрать строки без дубликатов, измените предложение WHERE на «RowCnt = 1»

  • Чтобы выбрать одну строку из каждого набора, используйте Rank () вместо Sum () и измените внешнее предложение WHERE, чтобы выбрать строки с Rank () = 1

Студенты с одинаковым именем и датой рождения

WITH CTE (StudentId, Fname, LName, DOB, RowCnt)
as (
SELECT StudentId, FirstName, LastName, DateOfBirth as DOB, SUM(1) OVER (Partition By FirstName, LastName, DateOfBirth) as RowCnt
FROM tblStudent
)
SELECT * from CTE where RowCnt > 1
ORDER BY DOB, LName

В этом примере используется выражение Common Table и функция Window, чтобы показать все повторяющиеся строки (в подмножестве столбцов) рядом.



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow