我正在尝试将 db2 简单查询调整为 SQL SERVER。该查询在 db2 上运行良好
select *
from pb_console.users u
join (
select * from pb_console.users_user_role j join
pb_console.users_roles r on j.role_id = r.role_id) as jj
on jj.user_id = u.user_id
在 sql server 上它失败并出现错误:
The column 'ROLE_ID' was specified multiple times for 'jj'
我尝试从连接的左表中删除角色 _id ,如下所示:
select * from pb_console.users u join (
select user_id, role_rif from
pb_console.users_user_role j join (select role_id, role_name from
pb_console.users_roles) r
on
j.role_id = r.role_id) as jj on jj.user_id = u.user_id
但导致.
The column 'role_id' was specified multiple times for 'jj'.
我还尝试为第一个 role_id 使用不同的别名,但没有成功。
我怎样才能解决这个问题?
引发错误的原因是ColumnName
ROLE_ID两个表中均存在pb_console.users_user_role & pb_console.users_roles
所以尝试指定仅需要的列,如下所示
SELECT *
FROM pb_console.users u
join (
SELECT J.RoleID,J.User_ID FROM pb_console.users_user_role j
JOIN pb_console.users_roles r ON j.role_id = r.role_id) AS jj
on jj.user_id = u.user_id
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)