3

次の2つのテーブルがあります。

ITEM AREA YEAR  MONTH   DAY QTY OL  EXQTY   EXOL    CREATE DATE UPDATE
------------------------------------------------------------------------    
ABC789  XYZ1234 2012    6   22  0   0   0   0   2012/07/04  2012/09/03
ABC789  XYZ1234 2012    6   23  0   0   0   0   2012/07/04  2012/09/03
ABC789  XYZ1234 2012    6   24  0   0   0   0   2012/07/04  2012/09/03
ABC789  XYZ1234 2012    6   25  0   0   0   0   2012/07/04  2012/09/03
ABC789  XYZ1234 2012    6   26  0   0   0   0   2012/07/04  2012/09/03
ABC789  XYZ1234 2012    6   27  0   0   0   0   2012/07/04  2012/09/03

STDATE      EDDATE       FYYEAR  FYMONTH
---------------------------------------
2012/04/23  2012/05/27   2012      11
2012/05/28  2012/06/24   2012      12
2012/06/25  2012/07/22   2013       1
2012/07/23  2012/08/26   2013       2

FYYEAR最初のテーブルと2番目のテーブルのすべてのデータを使用して新しいビューを作成する必要がありFYMONTHます。基準は、最初の表(YEAR MONTH DAY)の販売日がと2番目の表の間にSTDATEあるEDDATE場合、正しいものFYYEARFYMONTH選択する必要があるということです。

4

2 に答える 2

2
select table1.*, fyyear, fymonth
from table1 
    inner join table2 
    on convert(date,convert(varchar(4),table1.year)+'-'+convert(varchar(4),table1.month)+'-'+convert(varchar(4),table1.day),120)
    between table2.stdate and table2.eddate
于 2012-09-25T09:35:06.967 に答える
0

これを試して:

select t1.*,
       FYYEAR ,
       FYMONTH 
from   tbl_1 t1
join   tbl_2 t2
on     cast([YEAR] as char(4))+'-'+
       cast([MONTH] as varchar(2))+'-'+
       cast([DAY] as varchar(2)) 
       between STDATE and EDDATE
于 2012-09-25T09:42:12.917 に答える