c# - 在SQL中从一行中选择多行

标签 c# sql sql-server tsql

我从多个表中得到以下输出

id    b   c   b     e    b     g  
abc  2   123  3   321   7   876  
abd  2   456  3   452   7   234  
abe  2   0    3   123   7   121  
abf  2   NULL 3   535   7   1212  

现在我想将这些值插入到另一个表中,单个命令的插入查询如下:

insert into resulttable values (id,b,c), (id,b,e) etc.

为此我需要做一个选择,这样它就会给我

id,b,c
id,b,e etc

我也不介意去掉 b,因为它可以使用 C# 查询来选择。

如何使用 sql 中的单个查询实现相同的目的。再次请注意它不是一个表,它是来自不同表的输出

我的查询应该如下所示:从上面我需要做类似的事情

select b.a, b.c
union all
select b.d,b.e from  (select a,c,d,e from <set of join>)  b

但不幸的是,这不起作用

最佳答案

INSERT resulttable
SELECT id, b, c
FROM original
UNION
SELECT id, b, e
FROM original

您的示例有多个名为“b”的列,这是不允许的...

关于c# - 在SQL中从一行中选择多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4983221/

相关文章:

c# - 为什么 Console.ReadKey() 将 'a' 符号连接到下一个输出?

c# - 在我的应用程序中手动生成 guid 还是让 sql server/azure sql 为我生成它更好

sql - HIVe 创建不包含重复项的 Json 数组

mysql - 错误: MySQL shutdown unexpectedly

c# - C#中如何执行sql select语句

c# - 返回内存中(缓存的)集合,或来自异步等待响应的任务

c# - ASP.NET TextBox 忽略更新面板

mysql - 使用自生成的主键插入

php - 数据以 64512 个字符结束 - MSSQL//PHP//OPENSuSE//APACHE2

sql - 在一列中存储不同的数据类型以减少表数