1

私は都市リヴィウから同じ名前と家族を持つすべての人々を選ぶ必要があります。これは私のdbテーブルです

depart
 debt   city
  43    odesa
  23    kiev
  79    lviv
  78    lviv

empl            
ide  fn ln  debt
341 ki  trt 43
354 jed vt  79
 43 ged gf  79
 73 ged gf  79
456 jkl gdfg    78
532 kkhg    vjv 23
 45 ki  vt  79
243 ki  vt  78

これは期待される結果です

  fn    ln
 ged    gf
  ki    vt

私はそのようなスクリプトを書きました

select distinct FN, LN from empl inner join depart on depart.DEBT=empl.DEBT
where LN  in 
(select
LN from empl 
 group by LN
having count(LN)>1)
and 
FN  in 
(select
FN from empl 
group by FN
having count(FN)>1)
and
depart.CITY='lviv';

ただし、同一のレコードを選択せず​​、ide 354でレコードを表示します。どのように変更しますか?
ヒキガエルと一緒にオラクルを使います

4

2 に答える 2

1
select fn, ln
from 
    depart
         inner join 
    empl 
         on depart.debt = empl.debt
where 
    city = 'lviv'
group by fn, ln
having count(*)>1
于 2012-08-08T08:47:58.113 に答える
1

これを試して:

SELECT E.FN, E.LN 
FROM EMPL E LEFT OUTER JOIN DEPART D
ON E.DEBT=D.DEBT
WHERE CITY = 'LVIV'
GROUP BY E.FN, E.LN
HAVING COUNT(*)>1
于 2012-08-08T08:48:34.477 に答える