oracle语句转db2

chen505586338 2014-01-06 08:15:39
SELECT distinct
x.moduleId,
x.authId,
x.authBeId,
x.authSource,
x.authBeName,
x.roleBeId,
x.roleBeName,
x.authDescription,
x.authName,
x.authType
FROM (SELECT distinct A.MODULE_ID as moduleId,
A.AUTH_ID as authId,
A.AUTH_BE_ID as authBeId,
A.AUTH_SOURCE as authSource,
A.AUTH_BE_NAME as authBeName,
A.ROLE_BE_ID as roleBeId,
A.ROLE_BE_NAME as roleBeName,
C.DESCRIPTION as authDescription,
C.AUTH_NAME as authName,
B.AUTH_TYPE as authType
FROM view_sys_role_auth A
JOIN SYS_AUTH B ON A.AUTH_ID = B.AUTH_ID
LEFT JOIN SYS_AUTH_LANG C ON A.AUTH_ID = C.AUTH_ID
<[ AND C.LOCALE = :locale ]>
WHERE 1 = 1
<[ AND A.ROLE_ID = :roleId ]>
<[ AND A.MODULE_ID = :moduleId ]>
<[ AND A.AUTH_SOURCE = :authSource ]>
UNION ALL
SELECT A.MODULE_ID as moduleId,
A.AUTH_ID as authId,
A.AUTH_BE_ID as authBeId,
A.AUTH_SOURCE as authSource,
A.AUTH_BE_NAME as authBeName,
A.ROLE_BE_ID as roleBeId,
A.ROLE_BE_NAME as roleBeName,
C.DESCRIPTION as authDescription,
C.AUTH_NAME as authName,
B.AUTH_TYPE as authType
FROM view_sys_role_auth A
JOIN SYS_AUTH B ON A.AUTH_ID = B.AUTH_ID
LEFT JOIN SYS_AUTH_LANG C ON A.AUTH_ID = C.AUTH_ID
<[ AND C.LOCALE = :locale ]>
WHERE 1 = 1
AND A.AUTH_SOURCE != 2
<[ AND A.ROLE_ID IN (SELECT PARENT_ROLE_ID
FROM SYS_ROLE_DERIVE
WHERE SON_ROLE_ID = :roleId) ]>
<[ AND A.MODULE_ID = :moduleId ]>
<[ AND A.AUTH_SOURCE = :authSource ]>

) X
ORDER BY X.MODULEID, X.AUTHSOURCE, X.AUTHID
请问把这段sql转db2 如何写呢。
...全文
50 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

17,089

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧