Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL拉取许多唯一ID中的前1个并组合_Sql_Sql Server_Ssms - Fatal编程技术网

SQL拉取许多唯一ID中的前1个并组合

SQL拉取许多唯一ID中的前1个并组合,sql,sql-server,ssms,Sql,Sql Server,Ssms,您好,我正在尝试在SSMS中使用SQL查询组合两个SQL表。第一种方法是直接从一个表中抽取4列,每个ID#有一个条目。第二个是历史更改表,其中我需要第一次将项目更改为所有唯一ID的特定状态。 感谢所有受访者 我所拥有的: CurrentView ID Create Resolve Effort 1234 1/10/2017 1/10/2017 5 1235 1/11/2017 1/11/2017 8 1236 1/12/2017 1/

您好,我正在尝试在SSMS中使用SQL查询组合两个SQL表。第一种方法是直接从一个表中抽取4列,每个ID#有一个条目。第二个是历史更改表,其中我需要第一次将项目更改为所有唯一ID的特定状态。
感谢所有受访者

我所拥有的:

CurrentView

ID      Create      Resolve   Effort
1234    1/10/2017   1/10/2017   5
1235    1/11/2017   1/11/2017   8
1236    1/12/2017   1/12/2017   25
1278    1/13/2017   1/13/2017   34
1347    1/14/2017   1/14/2017   76
HistoryView

ID      Status  Timestamp
1234    prep      12:01
1234    working   13:01
1234    working   14:01
1235    prep      3:05
1235    working   4:05
1235    working   5:05
我需要的是:


一种非常简单的方法是:

SELECT 
  c.*, 
  (SELECT MIN([timestamp]) FROM HistoryView h 
   WHERE h.id = c.id and h.status = 'working') as "First time"
FROM
  CurrentView
WHERE ...

PS.未经测试。“timestamp”列是一个保留字,您可能会遇到问题。

能否请您进一步说明您的问题?您想如何组合这些?已删除DBMS特定的标记。请重新添加您实际使用的DBMS。ssms标记added@SeanAwesome。这起作用了!谢谢我用箭头标出了答案,但上面说,既然我是个傻瓜,就不会显示出来。当有人回答问题时还需要做什么?嗨,戴夫,我猜他回答得很快,有15分钟的宽限期,其他人也可以回答。再次检查,您应该能够选择mustaccio的答案。请看啊。它让我有了绿色支票,但我不能投票,因为缺乏声誉。谢谢你的链接@Russell
SELECT 
  c.*, 
  (SELECT MIN([timestamp]) FROM HistoryView h 
   WHERE h.id = c.id and h.status = 'working') as "First time"
FROM
  CurrentView
WHERE ...