apache / apache/iotdb-client-csharp
ALIGN BY DEVICE 查询结果错误
- 主要语言
- C#
- 星标
- 24
- 派生
- 6
- PR 合并指标
- 30 天内没有已合并 PR
描述
版本:Apache.IoTDB.Data 1.0.0.3
查询这样的语句,第2行获取不到数据。
sql:select FIRST_VALUE(ctwingCmdBody) as ctwingCmdBody ,MIN_TIME(ctwingCmdBody) as ts from root.beijingheat.commandCreate.IOT16810103.T10495873.P16810103.* where Time >= 2012-05-22T21:51:48.929 and Time < 2023-10-19T13:51:48.929 ALIGN BY DEVICE
cli的执行有结果:

测试代码如下:
using System.Data;
using Apache.IoTDB.Data;
using Microsoft.Extensions.Logging;
namespace ConsoleApp2
{
internal class Program
{
static void Main(string[] args)
{
string sql = "select FIRST_VALUE(ctwingCmdBody) as ctwingCmdBody ,MIN_TIME(ctwingCmdBody) as ts from root.beijingheat.commandCreate.IOT16810103.T10495873.P16810103.* where Time >= 2012-05-22T21:51:48.929 and Time < 2023-10-19T13:51:48.929 ALIGN BY DEVICE ";
IoTDBConnection _ioTDB= new IoTDBConnection("DataSource=192.168.1.101;Port=6667;Username=root;Password=root;Compression=false"); ;
Apache.IoTDB.SessionPool _session= _ioTDB.SessionPool;
Task.Run(async () =>
{
_session.Open();
var query =await _session.ExecuteQueryStatementAsync(sql);
while (query.HasNext())
{
var next = query.Next();
var values = next.Values;
var time = next.GetDateTime();
foreach (var item in values)
{
Console.WriteLine($"{item}");
}
}
});
Console.ReadLine();
}
}
}
执行结果如下:

贡献指南
这个仓库没有索引到贡献指南
调研方向
Start with the supplied C# console reproduction and the ExecuteQueryStatementAsync entry point, then inspect how the returned query rows and Values are iterated for the ALIGN BY DEVICE statement. Compare the client output with the CLI result, focusing on why the second row is missing. Done means the C# client returns the same rows as the CLI for this SQL.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- csharp
- 领域
- databases
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100