2016-11-23 7 views
0

編集:2016年11月23日10時32サブクエリVLOOKUP

[OK]をので、私はSQLに新しいですし、基本的にかなり良い得ているが、ベースのクエリを実行するために、Excelからこの分析を動かす上でいくつかの助けを必要としています。私はこれがWITHステートメントを提出したと思います。私は、ステートメントを表示/選択するために私たちのデータにのみアクセス許可を持っています。だから私のクエリは、セッションベースのビューにする必要があります。

私は[Install query]と[Service query]という2つのクエリをExcelにインポートします。 InstallQuery 1:Excelのシート1 サービスクエリ2:Excelシート2つの

2つのクエリは、彼らがどこ条件

Install Query

Service table

2の間のリンクをdifferntている同じexeptありますExcelのシートは(サイト番号)これを数値的に同等のものと考えてください。

私たちのインストールジョブのうち、いくつかが60日間でサービスコールを受けていると計算します。だから私はこれを行うには、最初にインストールクエリシート1を取って、新しい計算列 "ワラント日付"と既存の日付列 "オンサイト日付"を挿入し、60日を追加してこれを行う。次のとおりです。 オンサイト日付+ 60日=保証日。

次に、サービスクエリシート2のインストールクエリシート1からサイト番号を確認します。一致するものが見つかると、サービス日付とインストール日付を比較します。 「保証の適用範囲」 と呼ばれる新しい列に以下のロジックを使用したサービス日< =保証日 その後、「対象」 他に「対象外」

現在の結果は、すべてのExcelにしてインストールし、テーブルシートにある場合あなたに関連する基準に基づいて派生列を与えるために - 保証範囲の欄を追加してインストールするテーブルのカラム

おかげ

答えて

0

これはまさにcase文の使用です。私は私のテーブルは、私は2つのクエリによって移入Excelシートをしている話をしたミス

SELECT ST.* 
      ,CASE 
       WHEN [Service Date] <= [Warranty Date] 
        THEN 'Covered' 
       ELSE 'Not Covered' 
       END as 'Warranty coverage' 
     FROM [Install table] AS IT 
     INNER JOIN [Service table] AS ST 
      ON IT.[site number] = ST.[site number] 
+0

: - 、あなたが望む結果を選択し、関連する列にテーブルを結合この例では(私は明確にするためのテーブルをエイリアスしました)基本的に同じ "Where"条件を持っているが、他のすべてが "From"ステートメント – BrettF