Привет!)
Ибо времени особо нет, то вот кусок запроса, который формирует мне отчет, может чем поможет))
Код: Выделить всё
SELECT dfv.object_id AS "id", df.label,
CASE df.field_type
WHEN 'Multiselect' THEN CASE WHEN df.id = 26 THEN substr(substr(replace(replace(substr(config, strpos(config, 'PossibleValues:')+ length('PossibleValues:')+3, 9000), ':','='), ' ',''),
strpos(replace(replace(substr(config, strpos(config, 'PossibleValues:')+ length('PossibleValues:')+3, 9000), ':','='), ' ',''), CHR(39)||dfv.value_text||CHR(39))+length(CHR(39)||dfv.value_text||CHR(39))+1,9000), 0,
strpos(substr(replace(replace(substr(config, strpos(config, 'PossibleValues:')+ length('PossibleValues:')+3, 9000), ':','='), ' ',''),
strpos(replace(replace(substr(config, strpos(config, 'PossibleValues:')+ length('PossibleValues:')+3, 9000), ':','='), ' ',''), CHR(39)||dfv.value_text||CHR(39))+length(CHR(39)||dfv.value_text||CHR(39))+1,9000), CHR(10)))
ELSE dfv.value_text
END
WHEN 'DateTime' THEN CAST( dfv.value_date as varchar(50))
ELSE dfv.value_text
END as "value"
FROM dynamic_field_value dfv LEFT JOIN dynamic_field df ON df.id = dfv.field_id