Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.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 - Fatal编程技术网

Sql server 用于从表中提取目标数据的SQL

Sql server 用于从表中提取目标数据的SQL,sql-server,Sql Server,朋友们 我有一个简短的问题 我有一个日志表,我需要从中提取特定信息 有很多列,包括日期/时间戳和一些事务代码 记录用于多个帐号 我想提出以下几点: 从记录中为每个交易代码为100的账号提取几个字段。使用此代码可以有多个记录。 查找100代码记录之后的第一个转码为101的事务,并包含该记录的时间戳。 我们将一如既往地感谢您的帮助 谢谢。你的问题很模糊。请编辑并添加有关它的额外信息。根据我目前所了解的情况,我可以得出以下结论: 从您的表中选择AccountNumber、COL1、COL2、COL3,

朋友们

我有一个简短的问题

我有一个日志表,我需要从中提取特定信息

有很多列,包括日期/时间戳和一些事务代码

记录用于多个帐号

我想提出以下几点:

从记录中为每个交易代码为100的账号提取几个字段。使用此代码可以有多个记录。 查找100代码记录之后的第一个转码为101的事务,并包含该记录的时间戳。 我们将一如既往地感谢您的帮助


谢谢。

你的问题很模糊。请编辑并添加有关它的额外信息。根据我目前所了解的情况,我可以得出以下结论:

从您的表中选择AccountNumber、COL1、COL2、COL3,其中TRANSACTION_CODE=100-无聚合

我假设“之后”是指下一个时间戳。那样的话

从DATETIME\u TSTAMP所在的表中选择COL1、COL2= 从您的表中选择MINDATETIME\u TSTAMP,其中DATETIME\u TSTAMP>从您的表中选择DATETIME\u TSTAMP,其中TRANSACTION\u CODE=100,TRANSACTION\u CODE=101


请共享表结构、列名以及Q2的“之后”是什么意思。它是指下一个时间戳吗?你所说的“一些事务代码”是什么意思?它们是行还是列平面表格的一部分?是否有多行具有相同的事务代码?如果没有,则带有事务代码的任何行都会自动成为下一条记录。还有您所说的“100代码记录”是什么意思?如果有多个交易代码为100的记录,那么哪个记录是有问题的记录?好的。。更清楚一点:表中有以下列。AccountNumbernum10、Transcodenum3、DateStamUpdate几乎总是有多个trans 101用于每个帐户的100个实例。我想获得每个记录的账号结果,代码为100,以及该100条记录的日期戳,以及该账户在100笔交易之后发生的第一笔101笔交易的日期戳。
   SELECT COL1, COL2, DATETIMESTAMP FROM (
SELECT COL1, COL2, DATETIMESTAMP, ROW_NUMBER() OVER (ORDER BY TIMESTAMP) ROWNUM FROM YOURTABLE WHERE TRANSACTION_CODE =  101 AND DATETIMESTAMP >
(SELECT DATETIMESTAMP FROM YOURTABLE WHERE TRANSACTION_CODE = 100))A 
WHERE ROWNUM = 1