Я пытаюсь извлечь числа между двумя словами, но «substr
» не работает в сочетании с «instr
». По крайней мере, я не получу!Извлечь текст между словами
Пример:
CODTAX TAX_DESCRIPTION
-----------------------
1225 NCM 85444900 IPI 0% ICMS 18% CST 060 IVA 41,00% IVA EXT 51,32%
Количество экстракта между "IPI" и "%" является ICMS или между "IVA" и "%" IVA является 41.00.
CREATE TABLE TAX
(
CODTAX NUMBER,
TAX_DESCRIPTION VARCHAR2(200 BYTE)
);
INSERT INTO TAX (CODTAX, TAX_DESCRIPTION)
VALUES (1505, 'NCM 29051220 IPI 0% ICMS 18% CST 000 IVA 0% IVA EXT 0%');
INSERT INTO TAX (CODTAX, TAX_DESCRIPTION)
VALUES (1258, 'NCM 85444900 IPI 0% ICMS 18% CST 060 IVA 41,00% IVA EXT 51,32%');
INSERT INTO TAX (CODTAX, TAX_DESCRIPTION)
VALUES (2051, 'NCM 85362000 IPI 10% ICMS 18% CST 060 IVA 43,00% IVA EXT 53,46%');
Результат должен быть:
CODTAX TAX_DESCRIPTION IPI IVA
----------------------------------------------------------------------------------
1505 NCM 29051220 IPI 0% ICMS 18% CST 000 IVA 0% IVA EXT 0% 0 0
1258 NCM 85444900 IPI 0% ICMS 18% CST 060 IVA 41,00% IVA EXT 51,32% 0 41,00
2051 NCM 85362000 IPI 10% ICMS 18% CST 060 IVA 43,00% IVA EXT 53,46% 10 43,00
Какой результат вы получаете? Я бы использовал описанный вами подход. – Karl
Привет, Karl, ожидаемый результат равен 0 для IPI или 41,00 для IVA. Для каждого налога я создам один столбец! –
Результат должен быть: CODTAX \t TAX_DESCRIPTION \t \t \t \t \t \t \t \t ИПИ \t IVA НКМ 29051220 ИПИ 0% ICMS 18% ДКБ 000 НДС 0% НДС EXT 0% \t \t \t НКМ 85444900 ИПИ 0% ICMS 18% ДКБ 060 IVA 41,00% НДС EXT 51,32% \t 41,00 НКМ 85362000 ИПИ 10% ICMS 18% ДКБ 060 IVA 43,00% IVA EXT 53 , 46% \t 43,00 –