Sql server SQL Server将两个表合并为一个表
我有两张桌子 待定产品吨位Sql server SQL Server将两个表合并为一个表,sql-server,tsql,Sql Server,Tsql,我有两张桌子 待定产品吨位 | Product | Jan | Feb | Mar | +---------------------+------------------+----------+--------+ | E5000 | 91234 | 110000 | 10001 | | E6000 | 81234 | 1200
| Product | Jan | Feb | Mar |
+---------------------+------------------+----------+--------+
| E5000 | 91234 | 110000 | 10001 |
| E6000 | 81234 | 120000 | 10002 |
| E7000 | 71234 | 130000 | 10003 |
TBL_产品_卡路里
| Product | Jan | Feb | Mar |
+---------------------+------------------+----------+--------+
| E5000 | 5010 | 5020 | 5030 |
| E6000 | 6010 | 6020 | 6030 |
| E7000 | 7010 | 7020 | 7040 |
是否可以将该值合并到以下内容中
TBL_产品_联合收割机
| Product | Jan | Feb | Mar |
+---------------------+------------------+----------+--------+
| E5000 | 91234 | 110000 | 1001 |
| E5000_cal | 5010 | 5020 | 5030 |
| E6000 | 81234 | 120000 | 1002 |
| E6000_cal | 6010 | 6020 | 6030 |
| E7000 | 71234 | 130000 | 1003 |
| E7000_cal | 7010 | 7020 | 7030 |
请建议使用
union all
:
select product, jan, feb, mar
from tbl_product_tonnage
union all
select product + '_cal', jan, feb, mar
from tbl_product_calories
您的表吞吐量结构是否满足您的报告需求?因为它们没有标准化,但这确实是一个与所问问题不同的问题
这与
union
形成对比,union做的是相同的事情,只是它消除了重复记录。在您的情况下,结果是相同的,但如果您不需要重复数据消除算法,则可以更有效地避免重复数据消除算法。使用union all
:
select product, jan, feb, mar
from tbl_product_tonnage
union all
select product + '_cal', jan, feb, mar
from tbl_product_calories
select Product, Jan, Feb, Mar
from TBL_PRODUCT_TONNAGE
union
select Product + '_cal', Jan, Feb, Mar
from TBL_PRODUCT_CALORIE
order by Product
您的表吞吐量结构是否满足您的报告需求?因为它们没有标准化,但这确实是一个与所问问题不同的问题
这与
union
形成对比,union做的是相同的事情,只是它消除了重复记录。结果与您的情况相同,但如果您不需要重复数据消除算法,则可以更有效地避免重复数据消除算法。我将添加一些有关union和union all之间差异的详细信息。我将添加一些有关union和union all之间差异的详细信息
select Product, Jan, Feb, Mar
from TBL_PRODUCT_TONNAGE
union
select Product + '_cal', Jan, Feb, Mar
from TBL_PRODUCT_CALORIE
order by Product