2017-03-04 10 views
0

複数の値を与える参加インナーコラムに私は、データベース内の3つのテーブルを持っている

表:グループ

ID、名前

表:医師

Id、DId、DoctorName、

表:比率

同上、UPLIMIT、downLimitをしました。

私は、内側がそれらを結合するとき、私はUPLIMITする重複する値を取得し、downlimitています,,

実はグループは医者に関連して、一つのグループIDはmultple医師を持つことができ,,ので、私はいくつかのデータを保存するときグループと医師、それは同じデータを持つすべてのレコードに保存されているuplimitの下限は、異なる医師によって異なりますが、私は、すべての医師に同じ表示をdem demに参加する方法uplimitをスキップし、クエリを書く方法を下げる。

Select A.Group , B.doctor , C.Uplimit, D.downlimit from Group A 
inner join Doctor B 
on A.id = B.id 
inner join C ratio 
on A.id = c.id 

問題は私が医師のIDで別途確認すると医者のテーブルそれは1つのレコードを表示しているとき、私はそれらのすべての医師に特定の同じデータを表示する彼らに参加する それらに参加する方法?

+1

'Cのratio'または'比を必要なもの与えるべきであると仮定するとC?また、Dがありません – GurV

+0

比率c、いいえdテーブル – James

答えて

0

SELECTの後にDISTINCT句を使用してください。重複をフィルタリングします。

Select DISTINCT A.[Group] , B.doctor , C.Uplimit, D.downlimit 
FROM Group A 
inner join Doctor B 
on A.id = B.id 
inner join Ratio C 
on B.id = C.id 

表/列名としてキーワードを使用しないでください。

+0

いいえ、私はそれを試してみました – James

+0

@ジェームズ、あなたはサンプルデータと希望の結果を投稿してくださいできますか? – Venu

+0

ちょっと間違いました、私は問題だった3つのテーブルの中で同じIDを比較していましたが、今度は私の結果を与える2番目の内部結合のクエリを修正しました。応答ありがとう – James

0

あなたのテーブル構造は

表のようにする必要があります:グループ

ID、名前

表:医師

Idは、(外国DIDグルの鍵Pテーブル)、DoctorName

表:比率

ID(ドクター表に対する外部キー)、UPLIMIT、downLimit。

比率テーブルのいずれかである外部キーまたは主キーが欠落し、比率テーブルのIdが

Select A.Group , B.doctor , C.Uplimit, D.downlimit from Group A 
inner join Doctor B 
on A.id = B.Did 
inner join ratio C 
on B.id = c.id 

外部キーです。これは、あなたが

+0

いいえ、私は理解しなかったと思います。 id、idとは異なる – James

+0

次に、テーブル間のリンクは何ですか? @James – Pream

+0

idはリンクです。すべてのテーブルで共通しています。テーブルbとcには2つのカラムが共通していますので、私は今質問が間違っています。今質問は正常に動作しています – James

関連する問題