Множество НЕ различных

У меня есть база данных доступа к MS, и мне нужно будет создать SQL-запрос, который позволит мне выбрать все нечеткие записи в одном столбце, сохраняя при этом все значения.

В этом случае более чем когда-либо пример стоит тысяч слов:

Таблица:

A B C
1 x q
2 y w
3 y e
4 z r
5 z t
6 z y

SQL magic

Результат:

B C
y w
y e
z r
z t
z y

В основном он удаляет все уникальные значения столбца B, но сохраняет несколько строк данные сохранены. Я могу "группировать по b", а затем "count > 1", чтобы получить нечеткие, но результат будет отображать только одну строку B, а не 2 или более, что мне нужно.

Любая помощь?

Спасибо.

Ответы

Ответ 1

Select B, C
From Table
Where B In
    (Select B From Table
     Group By B
     Having Count(*) > 1)

Ответ 2

Другим способом возврата желаемых результатов будет следующее:

select *
from
    my_table
where 
    B in 
    (select B from my_table group by B having count(*) > 1)

Ответ 3

select 
  * 
from 
  my_table t1, 
  my_table t2
where 
  t1.B = t2.B
and
  t1.C != t2.C

-- apparently you need to use <> instead of != in Access
-- Thanks, Dave!

Что-то вроде этого?

Ответ 4

присоединяйте уникальные значения B, которые вы определили с группой по b, и count > 1 назад к исходной таблице, чтобы получить значения C из таблицы.