sqlserver数据库在查询过滤的时辰 , 经常需要联系关系其他的表结合查询 , 当需要同时知足两张表的成果的时辰 , 就可以利用INNER JOIN查询了
方式/
1建立一个姑且表 , 用于演示sqlserver语法中的INNER JOIN利用
IF OBJECT_ID('tempdb..#tmp1') IS NOT NULL DROP TABLE #tmp1;
CREATE TABLE #tmp1(
EName varchar(50), -- 姓名
EAddress varchar(200) -- 地址
);
文章插图
2建立别的一个姑且表 , 用于演示sqlserver语法中的INNER JOIN利用
IF OBJECT_ID('tempdb..#tmp2') IS NOT NULL DROP TABLE #tmp2;
CREATE TABLE #tmp2(
EName varchar(50), -- 姓名
ETitle varchar(200) -- 头衔
);
文章插图
3往姑且表中插入几行测试数据 , 此中包罗插入Null值
insert into #tmp1(EName, EAddress) values('员工1', '中国海说神聊京');
insert into #tmp1(EName, EAddress) values('员工10', NULL);
insert into #tmp1(EName, EAddress) values('员工100', '法国巴黎');
insert into #tmp2(EName, ETitle) values('员工1', NULL);
insert into #tmp2(EName, ETitle) values('员工10', '人员');
insert into #tmp2(EName, ETitle) values('员工99', '司理');
文章插图
4查询姑且表中的测试数据
select * from #tmp1;
select * from #tmp2;
文章插图
5利用INNER JOIN联系关系两张表 , 查询地址不为空的成果 , 这种写法其实是不保举的
select *
from #tmp1 a
inner join #tmp2 b on b.EName = a.EName and a.EAddress IS NOT NULL
文章插图
6【sqlserver关联查询的INNER JOIN使用写法】利用INNER JOIN联系关系两张表 , 查询地址不为空的成果 , 保举写法 , join子句中不要带过滤前提 , 仅含联系关系前提
select *
from #tmp1 a
inner join #tmp2 b on b.EName = a.EName
where a.EAddress IS NOT NULL
文章插图
7从上面两种写法的成果不异可以看出 , 利用inner join联系关系的环境 , 过滤语句写在join子句和where子句是一样的结果 。 可是 , 其他联系关系 , 如left join前提写在两个处所的结果是纷歧样的
文章插图
以上内容就是sqlserver关联查询的INNER JOIN使用写法的内容啦 , 希望对你有所帮助哦!
推荐阅读
- sqlserver模糊查询下划线和百分号通配符的使用
- 中通快递单号如何查询
- 怎么查询社保卡里医保账户的余额
- 商标注册进展怎么查询?
- 注册会计师成绩查询?
- 支付宝怎么查医保卡余额?
- 微信如何关联其他微信
- 商标查询多少钱?商标查询中应注意哪些问题?
- 王者荣耀如何查询各类物品使用情况?
- LOL英雄联盟怎么查询生日