2016-12-21 49 views
0

私は2つのテーブルtblJobsとtblJobseekerを持っています。 tblJobs複数の動的クエリの結合結果sql

JobId skill  location 
    5 .net, php Mexico 
    8 java  Boston 
    9 sql, c++ London, Mexico 

tblJobseeker

ID skill  location 
3 .net   Mexico 
7 sql   Boston 
10 java  Boston 
12 php   Mexico 
13 c++   London, Boston 

は今、私は最初のテーブルtblJobsをループしたいとskilllocationに基づく求職者のマッチングを見つけます。 tblJobsの各レコードについて、結果が他のレコードの結果セットと結合する必要があります。私はカーソルと動的クエリを使用しようとしていましたが、どのように動的クエリで列skilllocationの条件を設定することができます。また、両方のテーブルのレコードは上記の場合

異なる場合があり、その結果は

ID skill  location 
3 .net   Mexico 
12 php   Mexico 
10 java  Boston 
13 c++  London, Boston 

する必要があります私は質問を編集しました。ここではcharindexを使用して結果に一致させています。内側の結合は不可能です。n個の場所やスキルがあり、異なる列は使用できません。

+0

あなたも – GurV

+0

アドオン期待される結果を使用しているRDBMSにタグを付けてください。 –

+0

*他のレコードとの結合に必要な結果セット*その他のレコードは? – GurV

答えて

0

シンプルなインナーにはどうなるの参加:

select s.* 
from tblJobseeker s 
inner join tblJobs j 
on s.skill = j.skill 
and s.location = j.location; 
+0

こんにちはGurwinder。レコードに複数のスキルが含まれている可能性がありますので、内部結合は役に立ちません。 –

+0

この場合、データを正規化する必要があります。少なくとも1NFに準拠する必要があります。コンマで区切られた値をセルに入れるのは悪い練習です – GurV

+0

私は知っていますが、スキルや場所は複数で任意の数にすることができます –

関連する問題