A表
企业ID 企业名称
1 企业001
2 企业002
3 企业003
4 企业004
B表
产品ID 企业ID 主要产品名称
01 1 树脂A
02 1 树脂B
03 2 树脂C
04 3 胶带A
05 4 胶带B
C表
产品ID 企业ID 次要产品名称
01 2 产品A
02 1 树脂原材料
03 2 产品C
04 3 树脂原材料
05 4 产品D
想要达到的效果是:查询 关键字为“树脂”的产品。以企业列出来。检索的时候,没有树脂的企业不显示,没有树脂
企业ID 企业名称 主要产品名称 次要产品名称
——————————————————————————
1 企业001 树脂A 树脂原材料
——————————————————————————
树脂B
——————————————————————————
2 企业002 树脂C
——————————————————————————
3 企业003 树脂原材料
——————————————————————————
三个表查询,但是其中两个表是不直接关联的。具体看问题补充。我只是想知道。MYSQL语句怎么写。
答案:2 悬赏:0 手机版
解决时间 2021-02-01 03:13
- 提问者网友:孤山下
- 2021-01-31 03:00
最佳答案
- 五星知识达人网友:天凉才是好个秋
- 2021-01-31 03:23
先用a表与B表连接 产生一个数据集
再用a表与c表产生一个数据集
再将两个新的数据集链接起来
select * from(
select 企业id ,企业名称,主要产品名称 from a
inner join b on a.企业id=b.企业id
) x
inner join (
select 企业id ,企业名称,次要产品名称 from a
inner join c on a.企业id=b.企业id)
y
on x.企业id=y.企业id
再用a表与c表产生一个数据集
再将两个新的数据集链接起来
select * from(
select 企业id ,企业名称,主要产品名称 from a
inner join b on a.企业id=b.企业id
) x
inner join (
select 企业id ,企业名称,次要产品名称 from a
inner join c on a.企业id=b.企业id)
y
on x.企业id=y.企业id
全部回答
- 1楼网友:酒者煙囻
- 2021-01-31 03:29
create temporary table tmp_t1
(
dwdm varchar(20),
dwmc varchar(50),
type int
);
create temporary table tmp_t2
(
dwdm varchar(20),
dwmc varchar(50),
type int
);
select * from (select dwdm,dwmc from tmp_t1 where type=101) as t1
join (select dwdm,dwmc from tmp_t2 where type=102) as t2
on t1.dwdm = t2.dwdm;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯