2012-02-17 4 views
0

У меня есть одна таблица (A), у которой есть столбец caseid и citin, caseid может иметь одинаковый citin, Я хочу запрос, где я хочу конкретный citin, который имеет 2 или более caseid
Я попыталсяSQL-запрос для отдельной таблицы, сравнение значений столбцов таблицы

select a.caseid from A as a 
where citin in (select citin, caseid from A as c where c.caseid != a.caseid) 

Может кто-то помочь?

ответ

3
select a.citin, count(a.caseid) 
from A a 
group by a.citin 
having count(a.caseid) > 1 
+1

я не знаю, почему мы должны иметь «А как», когда мы не будем использовать ту же таблицу дважды .. и я получаю ошибку во втором строка "Sql запрос не завершен должным образом" –

+0

используя псевдоним в этом случае не получить никаких целей. Но иногда использование псевдонимов удобно (для автозаполнения, где, например, печатаются некоторые SQL-правки). Запрос исправлен (очевидно, «как» здесь не нужно). – triclosan

+0

yup я удалил a и использовал его отлично. :) –

1
SELECT a.citin, COUNT(DISTINCT a.caseid) 
FROM A a 
GROUP BY a.citin 
HAVING COUNT(DISTINCT a.caseid) >= 2 
+0

thanq за помощь –

3
select a.citin , count(a.caseid) from A a group by a.citin 
having count(a.caseid) >= 2; 
+0

+1 за то, что вы первый, с правильным ответом –

+0

thanq за помощью –

Смежные вопросы