远程开发时通知客户发一个CSV模板需要批量操作上传,但是这个模板发过来没有使用对应的主键ID,只给出了价目表的NAME字符串。
select distinct qlhv.name name,
qlhv.price_list_id price_list_id,
qlhv.description description,
qlhv.start_date_active,
qlhv.end_date_active
from QP_PRICELISTS_LOV_V qlhv
where sysdate between qlhv.start_date_active and nvl(qlhv.end_date_active,DATE'9999-9-9')
to_single_byte(c)转换成半角 to_multi_byte(c)转换成全角
转半角并且去掉字符串中的所有空格。
SELECT S.PRICE_LIST_ID,S.NAME FROM CUX_POBPA_CELLS T ,(
SELECT DISTINCT REPLACE(TO_SINGLE_BYTE(QLHV.NAME),' ') NAME,
QLHV.PRICE_LIST_ID PRICE_LIST_ID,
QLHV.DESCRIPTION DESCRIPTION,
QLHV.START_DATE_ACTIVE,
QLHV.END_DATE_ACTIVE
FROM QP_PRICELISTS_LOV_V QLHV
WHERE SYSDATE BETWEEN QLHV.START_DATE_ACTIVE AND NVL(QLHV.END_DATE_ACTIVE,DATE'9999-9-9') )S
WHERE T.CELL_3 = S.NAME(+);
或者利用PLSQL的ODBC导入更为方便