我有以下 SQL,它抛出错误 Ambigously column name 'id'
select tbl_registration.*, tbl_ebp.name as ebp_name, tbl_Users.id as user_id, tbl_ebp.id as linked_ebp_id
from tbl_registration
left outer join tbl_ebp on tbl_ebp.id = tbl_registration.ebp_id
left outer join tbl_users on tbl_registration.email = tbl_users.username
where id = [PARAM]p_id
我读过一些关于此的文章,但找不到适合我的代码的工作解决方案。
非常感谢任何帮助。
您的 WHERE 子句 id 需要更具体,包括表名称:
WHERE table.id = [PARAM]p_id
如果两个事物共享相同的名称,就会产生歧义。在这种情况下,SQL 中的多个表都包含“id”列。
如果列名在当前所涉及的表集中是唯一的,那么 SQL 可以智能地消除列名的歧义 - 因此大多数时候您不需要在列名前添加表名。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)