Loading

사용자 지정 SQL에서 사용할 매개 변수에 둘 이상의 값을 전달하는 방법

게시 일자: Jul 20, 2023
과업

사용자 지정 SQL의 매개 변수를 통해 여러 문자열을 전달하는 방법. 쉼표로 구분된 값을 매개 변수로 전달하고 사용자 지정 SQL에서 사용하는 방법이 있습니까?

 

단계

아래 쿼리는 Oracle용 SQL에 적용됩니다.

select * from tablename where name in (
select regexp_substr(<Parameters.Parameter1>,'[^,]+', 1, level) from dual
connect by regexp_substr(<Parameters.Parameter1>, '[^,]+', 1, level) is not null)


아래 쿼리는 Microsoft SQL Server용 SQL에 적용됩니다.

SELECT *
FROM Test.dbo.tablename a
JOIN (  
(SELECT Number = ROW_NUMBER() OVER (ORDER BY Number),  
        Item FROM (SELECT Number, Item = LTRIM(RTRIM(SUBSTRING(<Parameters.Parameter1>, Number,  
        CHARINDEX(',', <Parameters.Parameter1> + ',', Number) - Number)))  
    FROM (SELECT ROW_NUMBER() OVER (ORDER BY s1.[object_id])  
        FROM sys.all_objects AS s1 CROSS APPLY sys.all_objects) AS n(Number)  
    WHERE Number <= CONVERT(INT, LEN(<Parameters.Parameter1>))  
        AND SUBSTRING(',' + <Parameters.Parameter1>, Number, 1) = ','  
    ) AS y)) x on a.colname = x.Item

추가 자원
매개 변수는 한 번에 하나의 값만 가질 수 있으며, 이는 의도된 것입니다.
Knowledge 기사 번호

001456708

 
로드 중
Salesforce Help | Article