この中規模のクエリがあり、特定のフィールドの取得に問題があります。
SELECT DISTINCT
enc.id, enc.cus_id, enc.createdon, enc.status,
enc.segment, enc.currentstep, enc.groupid, enc.fdprotocol,
enc_task.linkfile, cus.fname, cus.lname, login.first_name,
login.last_name, login.username, login.user_code, fp.protocol
FROM
mob_encounters_task enc_task, mob_encounters enc,
mob_customer cus, mob_login login, mob_protocol_type fp
WHERE
enc.id=enc_task.encounterid
AND
cus.id=enc_task.cus_id
AND
login.id=enc.createdby
GROUP BY enc.id
fp.protocolは文字列であり、テーブルfpには最大 5 つまたは 6 つの「プロトコル」があります。
私がやりたかったのは、enc.fdprotocolが空の場合、 fp.protocolを空にする必要があります。そうでない場合は、 fp.id = enc.fdprotocolに関連付けられたfp.protocolを取得します。
これが紛らわしいと思われる場合はお知らせください。私はしばらくこれに固執しています