Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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 Server_Tsql - Fatal编程技术网

Sql server 一个查询中的多个选择-一个基于另一个

Sql server 一个查询中的多个选择-一个基于另一个,sql-server,tsql,Sql Server,Tsql,我想从一个查询返回多个结果集,并假设第二个选择基于第一个。基本上我需要返回: 表1 身份证,姓名 表2 ID、名称、值、表1ID 我认为连接这些表是不可能的,因为表2可能包含表1中同一行的多个项目 是否有任何高效和性能明智的方法可以做到这一点?也许用CTE @编辑 样本数据: Table 1: ID Name 1 First 2 Second Table 2: ID Value Table1ID 1 2,25 1 2 2,45

我想从一个查询返回多个结果集,并假设第二个选择基于第一个。基本上我需要返回:

表1

身份证,姓名

表2

ID、名称、值、表1ID

我认为连接这些表是不可能的,因为表2可能包含表1中同一行的多个项目

是否有任何高效和性能明智的方法可以做到这一点?也许用CTE

@编辑

样本数据:

Table 1:
ID    Name
1     First
2     Second

Table 2:
ID    Value    Table1ID
1     2,25     1
2     2,45     1
3     1,94     2
4     2,12     3
我需要的结果是数据集,我使用C,所以我在这里使用C语法

DataSet.Tables(0)
    ID    Name
    1     First
    2     Second

DataSet.Tables(1)
    ID    Value    Table1ID
    1     2,25     1
    2     2,45     1
    3     1,94     2
稍后我将不得不合并这两个表,因为与表1相关的类包含值列表。我想知道是否应该改为使用SQL Join,然后将结果转换为查找,其方式要比返回两个表并且查找实例中只有第二个表更复杂?

这样如何:

对于DataSet.0:

对于DataSet.Table1:


尝试向我们展示一些示例数据和最终预期结果。我认为,适当的加入将解决您的问题。但首先尝试提供一些样本数据和预期结果。添加样本数据和预期结果。我实际上是这样做的:我只是希望可以做得更好。不过我还是这样吧。谢谢!
select ID, Name
from Table1
select Table2.ID, Table2.Value, Table2.Table1ID
from Table2 
    inner join Table1 on Table2.Table1ID = Table1.ID