我需要做一个交叉引用 3 个表的 PDO 语句,看来我被卡住了。
它基本上需要来自 2 个表(myl_contacts和mya_users)的 4 条记录,它们不需要列在myl_blocked_contacts中。
在 myl_blocked_contacts 中是带有 id 的行,以及被阻止的 contact_type('a'、'l'、'x' 等),我需要从我拥有和未被阻止的 myl_contacts 用户中进行选择(因此不在 myl_blocked联系方式)。
这是我到目前为止所做的 PDO::mysql 查询。我不知道从哪里开始,我在网上尝试了很多东西,但我似乎以某种方式走错了方向。谢谢!
$query = "SELECT myl_contacts.contact_id, mya_users.name, mya_users.city, mya_users.ext
from myl_contacts, mya_users,
LEFT JOIN myl_blocked_contacts
WHERE myl_contacts.contact_type='a'
AND myl_contacts.label_id=:id
AND (myl_blocked_contacts.contact_type!='a'
AND myl_blocked_contacts.contact_id!=mya_users.id)
";
$result = $db->prepare($query);
$result->bindValue(':id', $_id, PDO::PARAM_INT);
$result->execute();