我有以下表结构。
**Table_A**
A_Id(BigInt) Category_Ids(varchar(50))
1 1,2,3
2 2,3
**Table_B**
B_Id(BigInt) C_Id(Bigint) Name(varchar(50))
1 2 A
2 1 C
3 3 B
第一个查询: 在此查询中要获取 A_Id=1 的记录。我已经执行了以下代码。 Select [Category_Ids] from Table_A where A_Id=1 这将返回单列单行的数据表,值为“1, 2, 3” 假设上述查询将数据填充到 A_datatable 中。我从以下代码中获取字符串。字符串 ids = A_datatable.column[0][“Category_Ids”];
第二个查询: 现在,我必须从 Table_B 中获取值,其中 C_Id 在 (1, 2, 3) 中。我已执行以下代码并将字符串值传递给以下查询。 Select * from Table_B where C_Id in (ids) 当我执行上述查询时出现错误,无法将参数值从字符串转换为 Int64。