Попытка привести строку (в формате ГГГГ-ММ-ДД) в качестве даты ISO. Это уже в правильном формате, но выдает ошибку.
SELECT
*
FROM TABLE1
WHERE CHAR(VARCHAR((SUBSTRING(PARAMETER_VALUE,8,4)||
CASE SUBSTRING(PARAMETER_VALUE,4,3)
WHEN 'Jan' THEN '-01-'
WHEN 'Feb' THEN '-02-'
WHEN 'Mar' THEN '-03-'
WHEN 'Apr' THEN '-04-'
WHEN 'May' THEN '-05-'
WHEN 'Jun' THEN '-06-'
WHEN 'Jul' THEN '-07-'
WHEN 'Aug' THEN '-08-'
WHEN 'Sep' THEN '-09-'
WHEN 'Oct' THEN '-10-'
WHEN 'Nov' THEN '-11-'
WHEN 'Dec' THEN '-12-' END||
SUBSTRING(PARAMETER_VALUE,1,2))
),ISO) > CURRENT DATE;
Я получаю следующую ошибку: Оператор не был обработан, так как тип данных, длина или значение аргумента для параметра в позиции "1" подпрограммы "SYSIBM.CHAR" неверны. Имя параметра: "" .. SQLCODE = -171, SQLSTATE = 42815, DRIVER = 4.19.56
Я использую IBM Data Studio для запуска этого.