Following query is working fine individual, however if I joined this query with view (v_company_alias) system & performance goes down.
How I can optimize this query, so I can achieve best performance, please advise me.
Here is detail
Thanks
SELECT DISTINCT company.company_id, company.company_name, company_status
FROM company ,v_company_alias
WHERE UPPER(v_company_alias.company_name) LIKE 'L%'
AND company.company_id = v_company_alias.company_id
ORDER BY company_status,company_name
View : v_company_alias
CREATE NOFORCE VIEW COMPANY_ALIAS
(COMPANY_ID,COMPANY_NAME)
as
SELECT company_id,
alias company_name
FROM company_alias
WHERE deactivated_indicator = 'F'
UNION
SELECT company_id,
company_name
FROM company WITH READ ONLY
INDEXES : company.company_id
company_alias.alias_id
company_alias.company_id (FK)
1, company
Name Null? Type
------------------- ----------------------------
COMPANY_ID NOT NULL VARCHAR2(20)
SOURCE_TYPE_ID NOT NULL VARCHAR2(20)
COMPANY_NAME NOT NULL VARCHAR2(100)
TEMPORARY_NAME_INDICATOR VARCHAR2(1)
COMPANY_STATUS VARCHAR2(50)
DEACTIVATED_INDICATOR NOT NULL VARCHAR2(1)
2, company_alias
Name Null? Type
-----------------------------------------------
COMPANY_ALIAS_ID NOT NULL NUMBER(10)
ALIAS NOT NULL VARCHAR2(100) COMPANY_ID NOT NULL VARCHAR2(20)
INSERTED_TIMESTAMP NOT NULL TIMESTAMP(6)
DEACTIVATED_INDICATOR NOT NULL VARCHAR2(1)
3, v_company_alias
Name Null? Type
------------------- ----------------------------
COMPANY_ID VARCHAR2(20)
COMPANY_NAME VARCHAR2(100)
How I can optimize this query, so I can achieve best performance, please advise me.
Here is detail
Thanks
SELECT DISTINCT company.company_id, company.company_name, company_status
FROM company ,v_company_alias
WHERE UPPER(v_company_alias.company_name) LIKE 'L%'
AND company.company_id = v_company_alias.company_id
ORDER BY company_status,company_name
View : v_company_alias
CREATE NOFORCE VIEW COMPANY_ALIAS
(COMPANY_ID,COMPANY_NAME)
as
SELECT company_id,
alias company_name
FROM company_alias
WHERE deactivated_indicator = 'F'
UNION
SELECT company_id,
company_name
FROM company WITH READ ONLY
INDEXES : company.company_id
company_alias.alias_id
company_alias.company_id (FK)
1, company
Name Null? Type
------------------- ----------------------------
COMPANY_ID NOT NULL VARCHAR2(20)
SOURCE_TYPE_ID NOT NULL VARCHAR2(20)
COMPANY_NAME NOT NULL VARCHAR2(100)
TEMPORARY_NAME_INDICATOR VARCHAR2(1)
COMPANY_STATUS VARCHAR2(50)
DEACTIVATED_INDICATOR NOT NULL VARCHAR2(1)
2, company_alias
Name Null? Type
-----------------------------------------------
COMPANY_ALIAS_ID NOT NULL NUMBER(10)
ALIAS NOT NULL VARCHAR2(100) COMPANY_ID NOT NULL VARCHAR2(20)
INSERTED_TIMESTAMP NOT NULL TIMESTAMP(6)
DEACTIVATED_INDICATOR NOT NULL VARCHAR2(1)
3, v_company_alias
Name Null? Type
------------------- ----------------------------
COMPANY_ID VARCHAR2(20)
COMPANY_NAME VARCHAR2(100)