在蟾蜍我试图提取数据,但当我把条件之间的数据输出错误....请让我知道如果我错过了什么....请帮助...
SELECT B.USER_NAME AS CREATED_BY
,A.CREATION_DATE
,C.USER_NAME
,A.LAST_UPDATE_DATE
,A.PFIZER_ITEMCODE
,A.SYSTEM_ITEMCODE AS ORACLE_ITEM_CODE
,A.ITEM_DESCRIPTION
,A.BATCH_NUMBER
,A.MFR_CODE
,A.MFR_DESC AS MFR_DESCRIPTION
,TO_CHAR(A.MFR_DATE, 'DD-MON-YYYY') AS MFR_DATE
,TO_CHAR(A.EXPIRY_DATE, 'DD-MON-YYYY') AS EXPIRY_DATE
,TO_CHAR(A.EFFECTIVE_FROM, 'DD-MON-YYYY') AS EFFECTIVE_FROM
,A.EFFECTIVE_TO
,A.EXCISE AS EXCISE_AMOUNT
,A.EXCISE_RATE
,A.P2S
,A.P2R
,A.MRP
,A.STATE_CODE
,A.STATE
,(CASE SUBSTR(A.SYSTEM_ITEMCODE, 6, 2)
WHEN ('PI')
THEN 'OIP'
WHEN ('PF')
THEN 'OPF'
ELSE 'OWL'
END
) AS LEGAL_ENTITY
FROM xxdhl_pf_batch_pricing A
,fnd_user B
,fnd_user c
WHERE 1 = 1
AND A.CREATED_BY = B.USER_ID
AND A.LAST_UPDATED_BY = C.USER_ID
AND TO_CHAR(A.CREATION_DATE, 'DD-Mon-YYYY') BETWEEN '01-Jan-2015'
AND '08-Jan-2015'
Run Code Online (Sandbox Code Playgroud)
您应该修复连接语法和格式.简单规则:不要在FROM子句中使用逗号. 始终使用显式JOIN语法.
但你的问题可能就是约会.将日期比较作为日期而不是字符串:
TRUNC(A.CREATION_DATE) BETWEEN DATE '2015-01-01' and DATE '2015-01-08'
Run Code Online (Sandbox Code Playgroud)
该DATE关键字是非常方便的,因为这样你可以把日期常量在ISO标准的YYYY-MM-DD格式.