两表关联查询SQL语句的,要怎么写?

company表:companyIdcompanyNamecontacts1腾讯科技马化腾2微软公司鲍威尔3新浪科技小明users表:userIdcompanyIduse... company表:
companyId companyName contacts
1 腾讯科技 马化腾
2 微软公司 鲍威尔
3 新浪科技 小明

users表:
userId companyId userName userAge address
1 1 jack 23 上海
2 1 jack2 23 上海
3 2 jack3 23 上海
4 2 jack4 23 上海
5 3 jack5 23 上海
6 3 jack6 23 上海

表的 companyId已关联,要根据company表查询出companyId为1下的所有用户信息。
展开
 我来答
freechan10
2019-12-03 · TA获得超过2.9万个赞
知道小有建树答主
回答量:263
采纳率:68%
帮助的人:12.4万
展开全部

1、创建测试表;

create table company(companyId number, companyName varchar2(20), contacts varchar2(20));

create table users(userId number, companyId number, userName varchar2(20), userAge number, address varchar2(20));

2、插入测试数据;

insert into company values (1,'腾讯科技','马化腾');

insert into company values (2,'微软公司','鲍威尔');

insert into company values (3,'新浪科技','小明' );

insert into users values (1,1,'jack',23 , '上海'); 

insert into users values (2,1,'jack2', 23, '上海'); 

insert into users values (3,2,'jack3', 23, '上海'); 

insert into users values (4,2,'jack4', 23, '上海'); 

insert into users values (5,3,'jack5', 23, '上海'); 

insert into users values (6,3,'jack6', 23, '上海'); 

3、查询表中数据;

select * from users;

4、编写sql,关联两张表;select * from users t , company b where t.companyid = b.companyid and t.companyid = 1;

旅游路上小知识
高粉答主

2021-06-18 · 我是旅行小达人,专注解决旅行中遇到的问题
旅游路上小知识
采纳数:2 获赞数:83093

向TA提问 私信TA
展开全部

1、首先打开数据库客户端Navicat Premium 15工具,点击并打开一个数据库连接。

2、选中一个数据库,然后在鼠标右键,新建表;插入四个字段id、tname、tage和tsex。

3、字段插入完毕后,点击左上角的保存图标,输入表名,然后点击确定。

4、表创建完毕后,点击查询图标,新建一个查询窗口。

5、然后在查询编辑窗口,输入DESC t_teacher,查看表结构。

6、单击绿色三角箭头,执行SQL语句,查看执行结构,可以查看到表结构。

7、最后将上述的DESC改为DESCRIBE,然后再次执行查询,也可以查看到表结构。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
skyfukk
推荐于2017-04-23 · TA获得超过1187个赞
知道小有建树答主
回答量:966
采纳率:100%
帮助的人:623万
展开全部
设查询companyName是腾讯科技,contacts是马化腾的所有用户:

select b.* from company表 a left join users表 b on a.companyId=b.companyId where a.companyName='腾讯科技' and a.contacts='马化腾'
追问
其实 这样写  就可以哦   select b.* from company a left join users b on a.companyId=b.companyId where a.companyId=1 ;
追答
我想请问,如果你知道了b的companyId=1
就不需要查a了,你这样写等于:
select * from users表 where companyId=1

何必要关联这么麻烦,反而消耗了不必要的内存
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
王海超521
2011-09-27 · TA获得超过852个赞
知道小有建树答主
回答量:406
采纳率:0%
帮助的人:377万
展开全部
select userId ,u.companyId ,userName , userAge ,address,ompanyName, contacts
from users u,company c
where c.companyid=u.companyid
and c.companyid=1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Axure夜话
2018-07-06 · 知道合伙人软件行家
Axure夜话
知道合伙人软件行家
采纳数:1197 获赞数:1344
1992年毕业于太原理工大学,20年IT公司工作经验现任山西誉海和科技有限公司技术总监,老二牛车教育课程总监

向TA提问 私信TA
展开全部
关联的参考语句:
select 客户,商品名称,单价,折扣
from 价格表 a

inner join 折扣表 b

on a.客户=b.客户 and a.商品名称=b.商品名称
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式