现在有两个软件A,B。 A软件与硬件相连,读取数据然后写入SQL。 B软件同步调用A软件读取的数据。由于某种原因,必须通过SQL
A的数据库相当的庞大。在10GB左右。(而且在不断的增加)。表头有 DeviceCode(设备号)、TestPointSequenceNumber(测量点号)、ParameterName(测量名称)、TestTime(测量时间)、TestValue(测量数值)、Status、WaveID
而我现在需要用B软件,每几秒钟就调用一次他的TestValue数据。(需要条件)
如表头的英文所示。我需要判定的条件。
比如我需要DeviceCode=2000 TestPointSequenceNumber=1 ParameterName=震动 TestTime = XXXXX 这四个条件都满足的时候才输出TestValue。如果没有条件的话他们把所有测量值都输出,这不是我所希望的。实现目标
1.如何实现查询一个时间段内符合多条件的内容。最后输出TestValue
2.如何实现B软件与A软件实时调取。(秒为单位)
我想出来的是如果他第一个判定DeviceCode=2000,是说他要把DeviceCode列全扫一遍吗?然后再扫TestPointSequenceNumber?如果这样B软件要全局几十个点。这样不直接就崩溃了。
有没有什么语句可以实现这样的目的:先扫时间条件。(比如限定30个,因为每次有30个点写入。)得出数据群Z,然后在Z数据群中扫第二个条件。得出数据群X,然后类推。得到符合结果然后输出TestValue。
现在最重要的问题就是怎么能迅速的得到我想要的TestValue。而不是,我3个条件。他就要把整个三大列搜索一遍。那样用户会疯掉的
A的数据库相当的庞大。在10GB左右。(而且在不断的增加)。表头有 DeviceCode(设备号)、TestPointSequenceNumber(测量点号)、ParameterName(测量名称)、TestTime(测量时间)、TestValue(测量数值)、Status、WaveID
而我现在需要用B软件,每几秒钟就调用一次他的TestValue数据。(需要条件)
如表头的英文所示。我需要判定的条件。
比如我需要DeviceCode=2000 TestPointSequenceNumber=1 ParameterName=震动 TestTime = XXXXX 这四个条件都满足的时候才输出TestValue。如果没有条件的话他们把所有测量值都输出,这不是我所希望的。实现目标
1.如何实现查询一个时间段内符合多条件的内容。最后输出TestValue
2.如何实现B软件与A软件实时调取。(秒为单位)
我想出来的是如果他第一个判定DeviceCode=2000,是说他要把DeviceCode列全扫一遍吗?然后再扫TestPointSequenceNumber?如果这样B软件要全局几十个点。这样不直接就崩溃了。
有没有什么语句可以实现这样的目的:先扫时间条件。(比如限定30个,因为每次有30个点写入。)得出数据群Z,然后在Z数据群中扫第二个条件。得出数据群X,然后类推。得到符合结果然后输出TestValue。
现在最重要的问题就是怎么能迅速的得到我想要的TestValue。而不是,我3个条件。他就要把整个三大列搜索一遍。那样用户会疯掉的
这些表头
我只输出TestValue的值。但是所有设备的类型,采集的数值都在一列中。我必须通过判定DeviceCode、TestPointSequenceNumber、ParameterName 这三个条件才能确定输出的TestValue。
我现在可以查询是可以。。但是特别特别的慢。我理解的就是SQL他一列一列的去搜索。