[英]Exclude foreign keys from sql query
我有一些sql一起加入几张桌子
SELECT contact.contact_id,
form1.*,
form2.*
FROM contact
INNER JOIN form1
ON contact.contact_id = form1.contact_id
INNER JOIN form2
ON contact_contact_id = form2.contact_id
我想避免在输出中重复'contact_id'列而不必在表中写入每个字段名称(即我想继续使用form1.*
和form2.*
因为这将使报告更容易维护 - 字段是可能会改变)。 这可能吗? 我正在使用Postgres。
唯一的方法是“不要使用*”。 您需要明确地键入所需的列。 使用JOIN时这是一个很好的做法。 如果列太多,请使用结果
select column_name from information_schema.columns
where table_name='your table' and column_name<>'contact_id'
如果contact_id是表共享的唯一列名,则可以使用“自然连接”来连接表,并且最终只能使用连接列的一个副本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.