2016-04-21 5 views
0

SQL Server 2008を使用して、私は雇用者のプロジェクトのデータを含むSSRSレポートを持っています。レポートには雇用者名のフィルタがあります。 Sharepointでは、ユーザーがこのレポートを開くと、システムは自分の名前を確認し、それをemployer_nameフィルターに入れます。ユーザーは自分のプロジェクトに関する情報のみを表示します。SQL ServerクエリIF equal username

SELECT 
    [Employee Name], Project, level1, level2, level3 
FROM 
    table_1 
WHERE 
    [Employee Name] IN (@ReportParameter_employer_name) 

しかし、このクエリには、テーブルにない1人のユーザーを挿入する必要があります。このユーザーは、すべての雇用者のプロジェクトとその他すべての情報を参照する必要があります。

ので、クエリは次のようにする必要があります:このような問合せが可能である場合には、このクエリの正しい構文のヘルプのために

IF (@ReportParameter_employer_name) = ALexander50 
    SELECT 
     [Employee Name], Project, level1, level2, level3 
    FROM 
     table_1 

IF (@ReportParameter_employer_name) ≠ ALexander50 
    SELECT 
     [Employee Name], Project, level1, level2, level3 
    FROM 
     table_1 
    WHERE 
     [Employee Name] IN (@ReportParameter_employer_name) 

希望。または、別の解決策を提案してください。あなたは、単純なORオペレータを探している

答えて

1

SELECT [Employee Name], Project, level1, level2, level3 from table_1 
Where [Employee Name] = @ReportParameter_employer_name 
OR @ReportParameter_employer_name = 'ALexander50'; 
+0

Thxを多く、それは素晴らしい作品。 – Dmitry