Группировать по столбцу, где другой столбец не совпадает - PullRequest
0 голосов
/ 06 января 2012

Столбцы

Id int
Timestamp bignit --yyyyMMddhhmmss format
transId char(36) -- guid
type nvarchar(100)
UserId int

Я хочу выяснить все эти строки для UserId (Group BY), который получил более одной транзакции (transId don 't match) в одно и то же время (timestamp совпадения) и type in (select typename from typesTable where active =1) и еще один фильтр, такой как type.

Я попытался сгруппировать по идентификатору пользователя и метке времени, но не смог понять, как добавитьусловие "не совпадать" для столбца transId.

1 Ответ

2 голосов
/ 06 января 2012

Добавьте это после GROUP BY

HAVING MIN (transId) <> MAX(transId)

или

HAVING COUNT(DISTINCT transId) > 1

Это ограничит вас различными transId значениями для userID, timestamp группировки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...