这是在 Oracle 11g 中,我有一个表:LOG,其中包含许多列,如下所示 2 列:
ticketid
comments
我有另一个表 APP_ACCESS 包含(在其他列中)
user_id
appl_id
env_id
ticketid
APP_ACCESS 的 user_id、appl_id 和 env_id 是 LOG 表中 comments 列的一部分。无论这些部分存在于何处(全部三个),我都需要从 LOG 表中获取 ticketid 并更新 APP_ACCESS。
我尝试的内容如下(我无法检索票证本身,没有返回任何内容):
select L.ticketid from LOG L join APP_ACCESS U
on INSTR(L.COMMENTS, U.USER_ID) > 0 and INSTR(L.COMMENTS, U.APPL_ID) > 0
编辑 注释列中的#1 示例数据(注意:这是一个单元格,即一列,一行数据):
ATTEMPTED: MANAGERCOMMENTS="TEST",AFTER: MANAGERCOMMENTS="TEST"
ATTEMPTED: JUSTIFICATION="TEST",AFTER: JUSTIFICATION="TEST"
ATTEMPTED: REQUESTORDIVISION="DOF",AFTER: REQUESTORDIVISION="DOF"
ATTEMPTED: USERSELECTED="VEXUSERTEST",AFTER: USERSELECTED="VEXUSERTEST"
ATTEMPTED: REQUESTTYPE="CHANGE ACCESS",AFTER: REQUESTTYPE="CHANGE ACCESS"
ATTEMPTED: REQUESTORREGION="WASHINGTON",AFTER: REQUESTORREGION="WASHINGTON"
ATTEMPTED: ENVIRONMENTSELECTED="DEVELOPMENT",AFTER: ENVIRONMENTSELECTED="DEVELOPMENT"
ATTEMPTED: REQUESTORCOMMENTS="TEST",AFTER: REQUESTORCOMMENTS="TEST"
ATTEMPTED: APPLICATIONSELECTED="TEST_APP",AFTER: APPLICATIONSELECTED="TEST_APP"
ATTEMPTED: REQUESTOR="PRTEST",AFTER: REQUESTOR="PRTEST"
ATTEMPTED: ADDEDACCESSLEVELS="DEFAULT ACCESS",AFTER: ADDEDACCESSLEVELS="DEFAULT ACCESS"
USERSELECTED="后的字符串与APP_ACCESS表中的USER_ID相同。APPLICATIONSELECTED="后的字符串与APP_ACCESS表中的APPL_ID相同。类似地,ENVIRONMENTSELECTED=" 之后的字符串映射到 APP_ACCESS 表中的 ENV_ID。