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 Server加入日期_Sql_Sql Server_Join - Fatal编程技术网

SQL Server加入日期

SQL Server加入日期,sql,sql-server,join,Sql,Sql Server,Join,我有一个包含数据激活和终止记录的表。 我只从服务器获取订户、imsi、日期、包状态和数据包。现在我需要加入激活记录和终止记录 我不知道从哪里开始,也不知道如何实现这一点 有人能帮我吗 这个 应该是这样。 编辑答案如下: SELECT t1.subscriber, t1.imsi, t1.pakket, t1.datum, t1.data_pakket, t1.pakket_status, (SELECT min(datum) FROM mytable t2 WHERE t2.datum &

我有一个包含数据激活和终止记录的表。 我只从服务器获取订户、imsi、日期、包状态和数据包。现在我需要加入激活记录和终止记录

我不知道从哪里开始,也不知道如何实现这一点

有人能帮我吗

这个

应该是这样。 编辑答案如下:

SELECT t1.subscriber, t1.imsi, t1.pakket, t1.datum, t1.data_pakket, t1.pakket_status, 
(SELECT min(datum) FROM mytable t2
 WHERE t2.datum > t1.datum
AND pakket_status='TERMINATED') AS end_date
FROM mytable t1
WHERE t1.pakket_status='ACTIVATED';

SQLFIDLE证明:

连接激活和终止记录是什么意思。如果您使用的是SQL Server 2012或更高版本,请查看
LAG()
LEAD()
分析函数。如果你不在2012年,那么。不,我在SQL Server 2008上,确实我可以使用这些功能。我正在进一步研究,但似乎sqlfiddle出现故障或其他问题。我刚刚解决了你的问题。无需:Djust将我的查询添加到你的fiddle中,它似乎起作用:@Wishaal让我知道它是否对你的实际数据起作用,如果你需要任何反馈,我会在大约3-4个小时内提供一点,这样你可以问是否有什么不清楚的地方,我还需要做一件事。我在表格中放置了和id字段,该字段是自动递增的。如何获取激活行和终止行的id?