【发布时间】:2014-12-29 16:32:00
【问题描述】:
希望是一个简单的 MS SQL 问题!我有四张桌子:
Portfolio:
int portfolioId, string portfolioName
1,'PortFolio 1'
Trip:
int tripId, int portfolioId, int tripType, int maxPeople, string tripName
1, 1, 1, 20, 'Trip A'
2, 1, 1, 21, ’Trip B'
3, 1, 2, 22, ’Trip C'
Person:
int personId, int personStatus, string personName
1, 14, ‘Person 1'
2, 15, ‘Person 2'
3, 16, ‘Person 3'
TripPerson:
int personId, int tripId
1, 1
1, 3
2, 1
2, 2
对于给定的投资组合 ID,我正在尝试编写一个干净的查询,该查询将为我提供以下列:
tripId, countA, countB, tripType, tripName
在哪里: CountA:是行程中的总人数。 CountB:是参加该旅行且至少参加过另一次类型为“2”的旅行的总人数。 返回的行数必须与与portfolioId = 1 的投资组合相关的旅行次数相匹配,按tripName 排序。
想法?我正在使用 MS SQL,对 SQL 有基本的了解,这让我很着急。
【问题讨论】:
标签: sql sql-server sql-server-2012