请记住,我在这里分两个阶段构建查询。第一阶段是让它与现有的低效查询一起工作。
我一点也不擅长PL/SQL,但我在这里学习得很慢。
我有这个作为查询:
SELECT LOGONID,FIRSTNAME,LASTNAME,ORGNAME
FROM WCSADMIN.USERREG UR,WCSADMIN.ADDRESS A
WHERE UR.USERS_ID = A.MEMBER_ID
AND A.ADDRESSTYPE IN('S','SB')
AND A.STATUS='P'
AND UR.STATUS='1'
AND (UPPER(LOGONID) LIKE UPPER('%cn=users%')
OR UPPER(LOGONID) LIKE UPPER('%o=Buyer A Organization%'))
AND UPPER(LOGONID) LIKE UPPER('uid=resourcereaper%')
AND rownum < 10; -- limits the rows back
本质上,LOGONID 字段包含用于登录的 LDAP 字符串。字段中的第一个字符是 uid=username,ou=......
我需要能够将该字段分解为“用户名”。我认为您可以使用 translate 命令,但我不确定如何修剪 uid= 和所有(包括)第一个“,”。任何见解将不胜感激。
- 乔什