1

テーブル

こんにちは私は次の3つのテーブルを持っています、それらの中にデータの例

患者:1、DUMMY PT、78936、1987-07-18

Custom_fields:1、1、'血圧'、入力、'医療記録'

patient_info:1、1、80 / 90 blah blah、1


私が欲しいのは、私が非常に辛抱強いページである場合、pt_id =patients.patient_idである'patient_info'のすべての行を取得してから、doctor_id =$idであるcustom_fields.title=cf_idを取得してすべてを表示することです。

上記のデータの例から、次のようになります。

患者:DuMMY ptプロファイルページ:-

血圧:80/90何とか何とか

このテーブルをどのように結合するかについてのヒントはありますか?

注:私は試しました:

SELECT patient_info.info,custom_fields.title FROM patient_info where patient_info.pt_id='8' and custom_fields.id=patient_info.cf_id and custom_fields.doctor_id = '10'
join patients on patient_info.pt_id=patients.patients_id
join custom_fields on patient_info.cf_id=custom_fields.id

ここで、10と8はすでに与えられていますが(phpでは$ vars)、「患者に参加する」の近くでエラーが発生します

4

3 に答える 3

1

これを試して:

SELECT p.info,cf.title 
FROM patient_info p
INNER JOIN patients ps ON p.pt_id=ps.patients_id
INNER JOIN custom_fields cf ON p.cf_id=cf.id
WHERE p.pt_id='8' AND cf.doctor_id = '10'
于 2012-12-11T13:10:17.623 に答える
1

以下のコードを使用できます

select * from patients P,Custom_fields CF,patient_info PI where PI.pt_id=p.patient_id
and PI.cf_id=CF.id and CF.doctor_id='$id';
于 2012-12-11T13:00:07.973 に答える
1

左結合のように感じます

于 2012-12-11T13:18:54.143 に答える