1

2人の学生間で行われる本の交換を格納するSQLServer2005テーブルがあります。

ExchangeID   BookID   ExchangeDate   FromPersName   ToPersName
1            23       23.12.2011     John           Matt
2            22       15.02.2012     Billy          Ken
3            23       27.12.2011     Matt           Riddley
5            23       05.03.2012     Riddley        Josh
6            22       08.03.2012     Ken            Rachel
7            23       19.03.2012     Josh           Laura
8            23       15.01.2013     Laura          Mike
9            22       17.01.2013     Rachel         Stephanie

次のような特定の年のレポートを生成したいと思います。

Year:2012

BookID    PersonName      ReceivingDate   DeliveryDate
23        Matt            01.01.2012      27.02.2012
23        Riddley         27.02.2012      05.03.2012
23        Josh            05.03.2012      19.03.2012
23        Laura           19.03.2012      31.12.2012
22        Ken             01.01.2012      08.03.2012
22        Rachel          08.03.2012      31.12.2012
4

2 に答える 2

0

これは半分の解決策です。機能させるには、少し変更する必要があります。私はあなたの宿題について全部質問するつもりはありません。頑張ってください!

http://sqlfiddle.com/#!3/39d73/17

于 2013-01-16T09:29:13.070 に答える
0

テーブルはそれ自体に参加できます

select ex1.BookID,ex1.toPersName,ex1.ExchangeDate as DeliveryDate,Exchanges.ExchangeDate    
as ReceivingDate from Exchanges as ex1 inner join Exchanges on      
ex1.toPersName=Exchanges.FromPersName
于 2013-01-16T08:47:25.663 に答える