Неверное определение столбца или аргумента в бритве DB2 - PullRequest
0 голосов
/ 06 ноября 2019

Привет всем, у меня проблема с получением результата, используйте эту формулу LISTAGG в Razor в DB2. Можете ли вы помочь мне, что проблема с этой формулой и как ее решить?

Это мой запрос:

SELECT 
   REFRV_REV_CODE
,  LISTAGG(Cast(REFRV_DESCRIPTION as VARCHAR), ', ') AS Groups
FROM
    tref_revenue_code
GROUP BY REFRV_REV_CODE 

enter image description here

Ответы [ 2 ]

0 голосов
/ 08 ноября 2019

LISTAGG поддерживается только на Db2 для LUW начиная с версии 10.1, ваше сообщение об ошибке означает, что вы используете более раннюю версию.

Ваш код работает, например, на Db2 11.

WITH tref_revenue_code(REFRV_REV_CODE, REFRV_DESCRIPTION) AS (VALUES (1,'a'),(1,'b'))
SELECT
     REFRV_REV_CODE
,    LISTAGG(Cast(REFRV_DESCRIPTION as VARCHAR), ', ') AS Groups 
FROM 
    tref_revenue_code
GROUP BY 
    REFRV_REV_CODE 

возвращает

 REFRV_REV_CODE GROUPS
 -------------- ------
              1 a, b
0 голосов
/ 06 ноября 2019

Ошибка SQL0604N относится к недопустимой точности типа. Я бы предположил, что VARCHAR виноват. Вы пытались ограничить VARCHAR длиной, например, использовать VARCHAR (200) вместо одного VARCHAR?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...