0

私は次のテーブルを持っています-それをTable1と呼びます:

SIMULATION  PRODUCT               PERIOD    OUTPUT_OL_EstRes
0           USSIC_Aviation        2012Q3    25787698
0           Avemco_Aviation       2012Q3    13374366
0           HC_Houston_Aviation   2012Q3    41626488
0           Other_Aviation        2012Q3    700829
0           Disability            2012Q3    8566175

私が次のテーブルと結合しようとしていること-それをTable2と呼びます:

RptLOB                RptLOBPrintOrder  RptSegt
USSIC Aviation        1                 US Property & Casualty
Avemco Aviation       2                 US Property & Casualty
HC Houston Aviation   3                 US Property & Casualty
Other Aviation        4                 US Property & Casualty
Disability            5                 US Property & Casualty

次のコードを使用します。

select a.SIMULATION, REPLACE(a.PRODUCT,'_',' ') as PRODUCT, a.PERIOD, a.OUTPUT_OL_EstRes , b.RptLOBPrintOrder, b.RptSegt
from Table1 as a
left join Table2 as b
on a.PRODUCT=b.RptLOB

RptLOBPrintOrder列とRptSegt列でNULL値を取得します(アンダースコアを削除する必要がなかったため、値Disabilityを除く)。「_」を取り除くようにしたので、なぜこれが起こっているのかよくわかりません。以下の出力テーブル:

SIMULATION  PRODUCT                 PERIOD  OUTPUT_OL_EstRes    RptLOBPrintOrder    RptSegt
0           USSIC Aviation          2012Q3  25787698            NULL                NULL
0           Avemco Aviation         2012Q3  13374366            NULL                NULL
0           HC Houston Aviation     2012Q3  41626488            NULL                NULL
0           Other Aviation          2012Q3  700829              NULL                NULL
0           Disability              2012Q3  8566175             5                   US Property & Casualty

どんな助けでもありがたいです!これを行うためのより良い方法はありますか?

4

1 に答える 1

1

クエリ:

SQLFIDDLEXample

SELECT a.SIMULATION,
       REPLACE(a.PRODUCT,'_',' ') AS PRODUCT,
       a.PERIOD,
       a.OUTPUT_OL_EstRes ,
       b.RptLOBPrintOrder,
       b.RptSegt
FROM Table1 AS a
LEFT JOIN Table2 AS b ON REPLACE(a.PRODUCT,'_',' ')=b.RptLOB

結果:

| SIMULATION |             PRODUCT | PERIOD | OUTPUT_OL_ESTRES | RPTLOBPRINTORDER |                RPTSEGT |
------------------------------------------------------------------------------------------------------------
|          0 |      USSIC Aviation | 2012Q3 |         25787698 |                1 | US Property & Casualty |
|          0 |     Avemco Aviation | 2012Q3 |         13374366 |                2 | US Property & Casualty |
|          0 | HC Houston Aviation | 2012Q3 |         41626488 |                3 | US Property & Casualty |
|          0 |      Other Aviation | 2012Q3 |           700829 |                4 | US Property & Casualty |
|          0 |          Disability | 2012Q3 |          8566175 |                5 | US Property & Casualty |
于 2013-02-07T21:39:18.317 に答える