2012-08-24 69 views
4

这是我的表中的行:SQL服务器加入同一个表

 
Id |  FromDate   |  ToDate    | prod_Id 
------|---------------------------|--------------------------|------- 
1  | 2012-08-13 07:00:00.000 | 2012-08-14 18:59:00.000 | 10 
1  | 2012-08-13 07:00:00.000 | 2012-08-15 18:59:00.000 | 10 
1  | 2012-08-13 07:00:00.000 | 2012-08-16 18:59:00.000 | 10 

我想类似下面的结果:

 
Id | FromDate     |  ToDate    | prod_Id 
----|-----------------------------|---------------------------|--------- 
1 | 2012-08-13 07:00:00.000 | 2012-08-16 18:59:00.000 | 10 

怎么办呢?

+4

你可以更具体的先生吗?任何获取结果的标准都可以帮助 –

+1

我们不知道您当前的查询是什么样子,也不知道您当前的结果与期望的结果之间存在什么关系。目前,查询'SELECT 1',2012-08-13T07:00:00.000','2012-08-16T18:59:00.000',10'将是一个“答案”。 –

回答

5
SELECT Id, MIN(FromDate), MAX(ToDate), prod_Id 
FROM TbName 
GROUP BY Id, prod_Id 
1

你可以通过以下方式

SELECT 
p.dept,p.id, 
u.FirstName +'+ ' '+ '+ u.LastName as CreatedBy,        
v.FirstName +'+ ' '+ '+ v.LastName as ModifiedBy 
from tblUserNew p 
inner join tblUserNew u on p.CreatedBy=u.Id 
inner join tblUserNew as v on p.ModifiedBy=v.Id 
2

请试试这个SQL。 我认为这是你想要的。

SELECT Id, FromDate, MAX(ToDate), prod_Id 
FROM TbName 
GROUP BY Id, FromDate, prod_Id