Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

ORA-01843 in sql query

apollon27Sep 5 2020 — edited Sep 9 2020

Hello,

I am using Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 and when i run the following query it ends with ORA-01843 error.

SELECT NVL(B.F_EMP_EMPLOYER_ID,B.F_CONS_EMPLOYER_ID) F_EMPLOYER_ID,

    E.FULLNAME,

 B.BRANCH\_CODE,

B.YEAR,

B.EFTRAN\_DOCUMENT\_SERIES,

B.EFTRAN\_DOCUMENT\_NO,

A.LINE\_SEQNO,

A.F_INS_INSURED_ID,

A.F_MONTH,

A.F_YEAR,

A.F_SPIN_SPECIAL_INSURANCE_CODE,

C.SPECIAL_INSURANCE_DESCR

FROM CON_WORK_APD_INSURERS A, CON_WORK_APD_EMPLOYERS B,

CON_ALL_EMPLOYERS E, COM_SPECIAL_INSURANCE_CASES C

WHERE B.check_flag IN ('0', '1', '2')

AND B.APD_RECEIVED_FLAG IN ('1', '3','4')

AND B.EMPLOYER_TYPE = '1'--:P_EMPLOYER_TYPE

AND B.STATUS = '1'

--AND B.F_FROM_MONTH IS NOT NULL

--AND B.F_FROM_YEAR IS NOT NULL

AND E.ORGBRA_BRANCH_CODE = '604'--:P_BRANCH_CODE

AND A.WORAPDEM_BRANCH_CODE = B.BRANCH_CODE

AND A.WORAPDEM_YEAR = B.YEAR

AND A.WORAPDEM_SID = B.SID

--AND TO_DATE('01' || '/' || TO_CHAR(NVL(B.F_FROM_MONTH,1)) || '/' || TO_CHAR(NVL(B.F_FROM_YEAR,1900)), 'DD/MM/RRRR') BETWEEN TO_DATE('01' || '/' || TO_CHAR(:P_MONTH_FROM) || '/' || TO_CHAR(:P_YEAR_FROM), 'DD/MM/RRRR') AND LAST_DAY(TO_DATE('01' || '/' || TO_CHAR(:P_MONTH_TO) || '/' || TO_CHAR(:P_YEAR_TO), 'DD/MM/RRRR'))

AND TO_DATE('01' || '/' || TO_CHAR(NVL(B.F_FROM_MONTH,1)) || '/' || TO_CHAR(NVL(B.F_FROM_YEAR,1900)), 'DD/MM/RRRR')

BETWEEN

TO_DATE('01' || '/' || TO_CHAR(1) || '/' || TO_CHAR(2020), 'DD/MM/RRRR') AND LAST_DAY(TO_DATE('01' || '/' || TO_CHAR(3) || '/' || TO_CHAR(2020), 'DD/MM/RRRR'))

AND A.STATUS = '1'

AND A.F_SPIN_SPECIAL_INSURANCE_CODE IS NOT NULL

AND NVL(B.F_EMP_EMPLOYER_ID,B.F_CONS_EMPLOYER_ID) = E.EMP_EMPLOYER_ID

AND NVL(E.LEGCAT_LEGAL_CATEGORY_CODE, 'XXXXX') != '070'

--AND A.F_SPIN_SPECIAL_INSURANCE_CODE = NVL(:P_SPECIAL_INS_CODE, A.F_SPIN_SPECIAL_INSURANCE_CODE)

AND C.SPECIAL_INSURANCE_CODE = A.F_SPIN_SPECIAL_INSURANCE_CODE

table CON_WORK_APD_EMPLOYERS

CON_WORK_APD_EMPLOYERS column from_month is datatype number and can be null

Also column from_year is datatype number and can be null

Please because this query is from Oracle report Builder 6i, provide a solution that does not include case statement because this version of Report Builder does not support CASE statement.

Also I try to add in my query the following

AND B.F_FROM_MONTH IS NOT NULL

AND B.F_FROM_YEAR IS NOT NULL

but when it runs, it appears me ORA-01858

ORA-01858.jpg

Thank you.

This post has been answered by Frank Kulash on Sep 5 2020
Jump to Answer
Comments
Post Details
Added on Sep 5 2020
9 comments
292 views