SQL内部联接返回多个值
我有两个表,其值如下: tbl_a1 tbl_c1SQL内部联接返回多个值,sql,Sql,我有两个表,其值如下: tbl_a1 tbl_c1 e是唯一的,并出现在两个表中 Prod_code是唯一的生产编号Prod_Sub是批号(一个Prod_代码可以有多个批号) rec\u mat\u act是生产中实际使用的材料 我试图得到一个包含所有唯一产品代码及其产品子项和所用材料的列表,但我得到了重复的结果 我正在使用以下查询: SELECT a1.Prod_Code, a1.Prod_Sub, a1.Prod_Note,
- e是唯一的,并出现在两个表中李>
是唯一的生产编号Prod_Sub是批号(一个Prod_代码可以有多个批号)Prod_code
是生产中实际使用的材料rec\u mat\u act
SELECT a1.Prod_Code,
a1.Prod_Sub,
a1.Prod_Note,
c1.Rec_Mat_Act
FROM Tbl_Aggr1 as a1 INNER JOIN Tbl_Cem1 as c1
on c1.Prod_Code = a1.Prod_Code
WHERE a1.Prod_Code = '111'
在
SELECT
中使用DISTINCT
对我没有帮助,groupby
也没有帮助,但可能我用错了。如果在SELECT中添加DISTINCT,它应该只从第一个表中获取DISTINCT prod\u代码,然后将所有结果附加到它,即:
select distinct
a.prod_code, a.prod_sub, c.rec_mat_act
from tbl_a1 a
inner join tbl_c1 c on a.prod_code = c.prod_code
where a.prod_code = 111
请显示表格数据和预期结果
groupby
应给出您应得的结果。请通过QUERI提供您的团队。是否附上了预期结果?
SELECT a1.Prod_Code,
a1.Prod_Sub,
a1.Prod_Note,
c1.Rec_Mat_Act
FROM Tbl_Aggr1 as a1 INNER JOIN Tbl_Cem1 as c1
on c1.Prod_Code = a1.Prod_Code
WHERE a1.Prod_Code = '111'
select distinct
a.prod_code, a.prod_sub, c.rec_mat_act
from tbl_a1 a
inner join tbl_c1 c on a.prod_code = c.prod_code
where a.prod_code = 111