Hi @Amit Rane
Could you please modify your query as below and give a try. Since the FIRST() always returning a single value I guess it is causing the issue. So I modified the query with COLLECT_LIST().
SELECT
CONCAT(TO_ITEM_ID, ':', FROM_ITEM_ID) AS externalId,
node_reference('PDM', TO_ITEM_ID) AS startNode,
node_reference('PDM', FROM_ITEM_ID) AS endNode
FROM
`src:001:avocet:db`.`ITEM_LINK` AS LINK
JOIN
`src:001:avocet:db`.`avocet_001_pdm_structure_mapping` AS mapping
ON ITEM.ITEM_TYPE = mapping.source_entity_type
JOIN
`src:001:avocet:db`.`ITEM` AS ITEM
ON ITEM.ITEM_ID = LINK.FROM_ITEM_ID
WHERE
LINK.LINK_TYPE IN (
SELECT
CONCAT("'", REPLACE(CONCAT_WS(",", COLLECT_LIST(source_link_type)), ",", "','"), "'")
FROM
`src:001:avocet:db`.`avocet_001_pdm_structure_mapping` AS structure_mapping
JOIN
`src:001:avocet:db`.`ITEM` AS structure_ITEM
ON structure_ITEM.ITEM_TYPE = structure_mapping.source_entity_type
GROUP BY structure_mapping.source_entity_type
);
Hope this will be helpful to you.
Best regards,
Sudil