SQL 两个表之间的连接,不包括某些字段

SQL Join between two tables excluding some fields

我有两个tables Customer和Beneficiary,他们之间的关系是ManyToMany, 生成的 table customers_beneficiaries 包含受益人 ID 和客户 ID 我想获得具有给定 beneficiary_id

的客户列表
SELECT * from customer c 
Full OUTER JOIN customers_beneficiaries cb 
ON c.id= cb.customer_id
WHERE cb.beneficiary_id=8;

但是我得到的结果包含customers_beneficiariestable两个字段(customer_id && beneficiary_id) 我怎样才能从结果中排除它们 谢谢。

试试这个:(如果您可以将客户 table 中的 id 列名称更改为 customer_id

SELECT c.* from customer c 
Full OUTER JOIN customers_beneficiaries cb 
USING(customer_id)
WHERE cb.beneficiary_id=8;

USING 子句类似于 ON 子句,它包含必须在其上加入 table 的列的列表,但这些列必须存在于两个 table 中秒。连接操作中使用的列在输出中只出现一次。