2016-10-13 15 views
0

テーブル(EQUCODES)に次のサンプルデータがあり、 "CODE"列は "EQCODE"列として表される同等の値を持っています。 「EQCODE」の欄で、この値は、私が上記で参加したい同じ等価値を持つグループ行

ID || CODE || EQCODE 
-------------------------- 
1 || a || b 
2 || b || a 
3 || c || d 
4 || d || c 

他のテーブル(クライアントタイプ)つまり、その逆の値を持つことになり、「CODE」列と同等の値に同じ値を持つ別のレコードすることができテーブルには、

CLIENTID || CODE 
-------------------------- 
1   || a 
2   || a  
3   || b 
4   || a 
6   || b 
7   || b 

を次のestructureを持ってどのようにすることができ、私のグループ彼らはEQUCODESのテーブルと結合されると同等であるため、クエリが単一のレコードを返すような方法でこれらのクライアントタイプレコード?

+2

:あなたはcodeで集計したい場合、あなたはこの中で、そのクエリをラップでき

select ClientID, min(code) as Code from ( select ClientID, EQUCODES.EQCode as Code from CLIENTTYPE inner join EQUCODES on CLIENTTYPE.Code = EQUCODES.Code Union select ClientID, EQUCODES.Code from CLIENTTYPE inner join EQUCODES on CLIENTTYPE.Code = EQUCODES.EQCode ) U Group By ClientID 

をあなたが参加したい2つの入力テーブルは、出力データを提供してください。 – Esty

答えて

0

この使い、各クライアントのための標準的なコードを検索するには:これらは場合

select Code, count(ClientID) from 
(-- the query above 
) G 
Group by Code 
関連する問題