Sql 使用UNION连接两个表时出现的问题
我需要找到目标减去源表。以下是表的详细信息: 目标表的列-客户匹配:Sql 使用UNION连接两个表时出现的问题,sql,union,teradata,Sql,Union,Teradata,我需要找到目标减去源表。以下是表的详细信息: 目标表的列-客户匹配: - ID - CUST_ID - USER_ID - has default value 'A' 源表-sales1的列: - id 源表的列-sales2 - cu_id 映射如下所示: 1. customer_match.ID = sales1.id 2. customer_match.CUST_ID = sales2.cu_id 3. customer_match.USER_ID = 'A' 源表
- ID
- CUST_ID
- USER_ID - has default value 'A'
源表-sales1的列:
- id
源表的列-sales2
- cu_id
映射如下所示:
1. customer_match.ID = sales1.id
2. customer_match.CUST_ID = sales2.cu_id
3. customer_match.USER_ID = 'A'
源表应具有联合联接
根据上述要求,我已使用teradata编写了以下查询:
sel
ID
, CUST_ID
, USER_ID
from customer_match
MINUS
sel
id
,'A'
from sales1
UNION
sel
cu_id
,'A'
from sales2
但是这个查询不满足我的要求,因为我的id和CUU id都只映射到一列。
请您帮助我根据要求更正我的查询。您不能在查询中合并两个值。使用字段名而不是它
select
id
from sales1
UNION
select
cu_id
from sales2
您需要将
sales1.id
和sales2.cu_id
关联到加入它们UNION
不是您需要的命令。您真的需要关系型的UNION-JOIN
?这将是一个选择sales1.id、sales2.cust\u id、'a'作为用户id从sales1完全加入sales2 ON 1=0
。但你们真正想做的是什么,你们能展示一些实际的数据和预期的结果吗?