Как найти записи из таблицы, где одинаковые записи номеров имеют несколько ключей

85
4

Мои столбцы таковы:

column1 | column2
--------+--------
100 | 01
100 | 01
101 | 02
101 | 03
102 | 04
102 | 05
103 | 06
104 | 07
104 | 07

И я хочу, чтобы результат был следующим:

column1 | column2
--------+--------
101 | 02
101 | 03
102 | 04
102 | 05

спросил(а) 2021-01-19T15:57:06+03:00 1 месяц, 1 неделя назад
1
Решение
61

declare @T table
(
c1 int,
c2 int
)

insert into @T values
(100, 1),
(100, 1),
(101, 2),
(101, 3),
(102, 4),
(102, 5),
(103, 6),
(104, 7),
(104, 7)

;with C as
(
select C1,
C2,
count(*) over(partition by C1, C2) as D1,
count(*) over(partition by C1) as D2
from @T
)
select C1, C2
from C
where D1 = 1 and
D2 = 2

Если вы хотите включить 103 в результирующий набор, вы можете использовать это:

;with C as
(
select C1,
C2,
count(*) over(partition by C1, C2) as D1
from @T
)
select C1, C2
from C
where D1 = 1

ответил(а) 2021-01-19T15:57:06+03:00 1 месяц, 1 неделя назад
43

попробуй это

select myTable.column1,myTable.column2 from myTable,
(select column1 from
(select distinct column1, column2 from myTable where column2 )
group by column1 having count(column1) > 1) tempTable
where myTable.column1=tempTable.column1
order by myTable.column1,myTable.column2

ответил(а) 2021-01-19T15:57:06+03:00 1 месяц, 1 неделя назад
43

SELECT
column1,
column2
FROM atable
WHERE column1 IN (
SELECT column1
FROM atable
GROUP BY column1
HAVING COUNT(DISTINCT column2) > 1
)

ответил(а) 2021-01-19T15:57:06+03:00 1 месяц, 1 неделя назад
43

Попробуйте выполнить следующий запрос. Замените имя таблицы на правильное имя таблицы.

SELECT Column1,Column2 FROM dbo.TableName GROUP BY Column1,Column2
HAVING count(*)<=1

Пожалуйста попробуйте

ответил(а) 2021-01-19T15:57:06+03:00 1 месяц, 1 неделя назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема