SQL Объединение таблиц на основе идентификатора в хранимой процедуре - PullRequest
0 голосов
/ 11 марта 2020

Мне нужно получить все столбцы политик для идентификатора блока с хранимой процедурой JOIN.

псевдокод: выберите * из политик (tbl), где party.id = policy.policyNumber.

Вот что у меня пока ...

CREATE PROCEDURE [dbo].[usp_GetPolicyForClaimentByPolicyIdNumber]
(
    @IdNumber varchar(255) = null
)
AS
BEGIN
SELECT *
    FROM [BinderCurrent].[Policy]
    LEFT JOIN [BinderCurrent].[Policy] ON ([BinderCurrent].[Parties].Id = [BinderCurrent].[PolicyRoles].PolicyId)
    WHERE   [BinderCurrent].[PolicyRoles].PolicyRoleTypeId = 40
    AND (@IdNumber IS NULL OR [BinderCurrent].[Parties].IdNumber LIKE ''+@IdNumber+'%') 
    ORDER BY Id DESC

END

1 Ответ

1 голос
/ 11 марта 2020

Фильтр с ON предложением:

SELECT *
FROM [BinderCurrent].[Policy] LEFT JOIN 
     [BinderCurrent].[Policy] 
     ON ([BinderCurrent].[Parties].Id = [BinderCurrent].[PolicyRoles].PolicyId AND
         [BinderCurrent].[PolicyRoles].PolicyRoleTypeId = 40
WHERE (@IdNumber IS NULL OR [BinderCurrent].[Parties].IdNumber LIKE ''+@IdNumber+'%')
ORDER BY Id DESC;

Примечание. Таблица [BinderCurrent].[PolicyRoles] также должна отображаться с JOIN с. Это предполагает, что это часть вашего запроса.

...