使用group_concat

时间:2016-03-27 03:25:06

标签: php mysql sql

我有一个名为LOPList的表:

a busy cat http://i65.tinypic.com/11c60co.png

我希望结果如下:

LOPID | EMP ID | TIME START (LOPStatus = 'Y') | TIME END (LOPStatus = 'N')

2     | 6      | 2016-03-24T20:05:27+00:00    | 2016-03-24T20:14:41+00:00

5     | 6      | 2016-03-24T20:07:59+00:00    | 2016-03-24T20:13:11+00:00

2 个答案:

答案 0 :(得分:1)

尝试:

select LOPID,EmpId,
max(case when LOPStatus='Y' then TimeUpdated end) as time_start,
max(case when LOPStatus='N' then TimeUpdated end) as time_end  
from LOPList where JobID= 22 group by LOPID;

答案 1 :(得分:0)

SELECT list.LOPID,list.EmpID as" EMP ID", listY.TimeUpdated as" TIME START(LOPStatus =' Y')&#34 ;, listN.TimeUpdated as" TIME END(LOPStatus =' N')& #34; from(SELECT DISTINCT LOPID,EmpID FROM [TestDB]。[dbo]。[LOPList])AS列表, (从[TestDB]中选择LOPID,LOPStatus,TimeUpdated。[dbo]。[LOPList]其中LOPStatus =' Y')listY, (从[TestDB]中选择LOPID,LOPStatus,TimeUpdated。[dbo]。[LOPList]其中LOPStatus =' N')listN  WHERE listY.LOPID = list.LOPID和listN.LOPID = list.LOPID;

你应该知道一些sql语言的besic知识,在这里你应该使用' DISTINCT'声明,谢谢,希望能带给你一些帮助