insert into DCT_EXCEL_SALES_SCRIPT_MONTH (
sid,
sourceid,
useno,
filedate,
salesdate,
customid,
customname,
goodsid,
goodstype,
factoryname,
goodsunit,
lotno,
proddate,
invaliddate,
goodsqty,
unitprice,
total_line,
databatchid,
datacount,
datastate)
select seq_dct_data_batchid.nextval,
nSourceID, --数据来源
szUseNo, --逻辑时间周期号
dtEhauDate, --审核时间
case --查询是否有异常的销售日期,如果有用3000-1-1日标记
when salesdate is null then --空值为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
when salesdate < dtStartDate then --销售日期早于任务起始日期为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
when salesdate >dtEndDate then --销售日期晚于任务结束日期为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
else salesdate --如果在起始日期,截止日期之内的为正常数据,正常采集
end
customid, --客户ID
customname, --客户姓名
goodsid, --货品ID
goodsname, --货品名称
goodstype, --规格
factoryname, --生产厂家
goodsunit, --计量单位
lotno, -- 批号
proddate, --生产日期
invaliddate, --有效期至
goodsqty, --数量
unitprice, --单价
total_line, --金额
nDataBatchID, --数据批次ID
0 --数据抽取状态,默认为0
from
DIP_DATA_SALES
where
EHID=nEhid;
大家帮我看看我的SQL哪里出错了
sid,
sourceid,
useno,
filedate,
salesdate,
customid,
customname,
goodsid,
goodstype,
factoryname,
goodsunit,
lotno,
proddate,
invaliddate,
goodsqty,
unitprice,
total_line,
databatchid,
datacount,
datastate)
select seq_dct_data_batchid.nextval,
nSourceID, --数据来源
szUseNo, --逻辑时间周期号
dtEhauDate, --审核时间
case --查询是否有异常的销售日期,如果有用3000-1-1日标记
when salesdate is null then --空值为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
when salesdate < dtStartDate then --销售日期早于任务起始日期为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
when salesdate >dtEndDate then --销售日期晚于任务结束日期为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
else salesdate --如果在起始日期,截止日期之内的为正常数据,正常采集
end
customid, --客户ID
customname, --客户姓名
goodsid, --货品ID
goodsname, --货品名称
goodstype, --规格
factoryname, --生产厂家
goodsunit, --计量单位
lotno, -- 批号
proddate, --生产日期
invaliddate, --有效期至
goodsqty, --数量
unitprice, --单价
total_line, --金额
nDataBatchID, --数据批次ID
0 --数据抽取状态,默认为0
from
DIP_DATA_SALES
where
EHID=nEhid;
大家帮我看看我的SQL哪里出错了
where EHID=nEhid;?
when salesdate is null then --空值为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
when salesdate < dtStartDate then --销售日期早于任务起始日期为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
when salesdate >dtEndDate then --销售日期晚于任务结束日期为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
else salesdate --如果在起始日期,截止日期之内的为正常数据,正常采集
end 这里最后少了个,
sid,
sourceid,
useno,
filedate,
salesdate,
customid,
customname,
goodsid,
goodstype,
factoryname,
goodsunit,
lotno,
proddate,
invaliddate,
goodsqty,
unitprice,
total_line,
databatchid,
datastate)
select seq_dct_data_batchid.nextval,
nSourceID, --数据来源
szUseNo, --逻辑时间周期号
dtEhauDate, --审核时间
case --查询是否有异常的销售日期,如果有用3000-1-1日标记
when salesdate is null then --空值为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
when salesdate < dtStartDate then --销售日期早于任务起始日期为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
when salesdate >dtEndDate then --销售日期晚于任务结束日期为异常
TO_date('3000-01-01 00:00:00',
'YYYY-MM-DD HH24:MI:SS')
else salesdate --如果在起始日期,截止日期之内的为正常数据,正常采集
end,
customid, --客户ID
customname, --客户姓名
goodsid, --货品ID
goodsname, --货品名称
goodstype, --规格
factoryname, --生产厂家
goodsunit, --计量单位
lotno, -- 批号
proddate, --生产日期
invaliddate, --有效期至
goodsqty, --数量
unitprice, --单价
total_line, --金额
nDataBatchID, --数据批次ID
0 --数据抽取状态,默认为0
from
DIP_DATA_SALES@dbl_dct_dip DIP_DATA_SALES
where
EHID=nEhid;现在是值过多。。