Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Помогите найти неповторяющиеся записи  [new]
ELwooD07
Member

Откуда:
Сообщений: 4
Здравствуйте!
Возникла проблема: нужен запрос, который ищет неповторяющиеся записи по нескольким критериям в 1 таблице.
Таблица имеет 4 поля:
№пп (int), №объекта (int), год (date), свойство объекта (int)

Для каждого номера объекта в одном году может существовать несколько свойств, в том числе и одинаковых.
Одинаковые свойства за 1 год считаются как одно (повторы за 1 год не учитываются).
Нужно вывести таблицу с номерами объектов и годом, у которых разные свойства за 1 год повторяются (появляются более 1 раза) с количеством этих повторов.

Пробовал произвести выборку из 2 копий этой таблицы (сравнивал значения), ничего не получилось, глаз уже замылился, может подскажете интересные идеи как решить эту задачу?
29 июн 12, 13:09    [12794056]     Ответить | Цитировать Сообщить модератору
 Re: Помогите найти неповторяющиеся записи  [new]
Glory
Member

Откуда:
Сообщений: 104751
group by №объекта, год, свойство объекта having count(*) = 1
29 июн 12, 13:18    [12794130]     Ответить | Цитировать Сообщить модератору
 Re: Помогите найти неповторяющиеся записи  [new]
ELwooD07
Member

Откуда:
Сообщений: 4
Glory
group by №объекта, год, свойство объекта having count(*) = 1


Спасибо! Я использовал подобную запись с having, но теперь в результате получаю поля
№пп, №объекта, год, свойства объекта
где из свойств объекта исключены повторяющиеся свойства для 1 года.
Но мне нужно, чтоб в последней колонке было количество свойств для 1 года, как это осуществить?
29 июн 12, 14:04    [12794477]     Ответить | Цитировать Сообщить модератору
 Re: Помогите найти неповторяющиеся записи  [new]
ELwooD07
Member

Откуда:
Сообщений: 4
Glory, дело в том, что для подсчета количества свойств, которые появляются в результате, нужно использовать описанный Вами способ в подзапросе, а sql на это жалуется.
29 июн 12, 14:31    [12794753]     Ответить | Цитировать Сообщить модератору
 Re: Помогите найти неповторяющиеся записи  [new]
Glory
Member

Откуда:
Сообщений: 104751
https://www.sql.ru/forum/actualthread.aspx?tid=127456 п.4. и п.6
29 июн 12, 14:37    [12794812]     Ответить | Цитировать Сообщить модератору
 Re: Помогите найти неповторяющиеся записи  [new]
ELwooD07
Member

Откуда:
Сообщений: 4
Glory,

Большое спасибо за наводку, проблема решена :)

Сделал 2 запроса - внутренний с distinct по столбцу свойств, а внешний - с HAVING count(*)>1
29 июн 12, 16:04    [12795633]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить