连接是数据库主要的特点,通常一个表中不会存放不同实体的信息,不同实体的信息存在不同的表当中,但是要同时查出多个表当中的信息时就需要多个表合并到一起进行查询,此时连接表的作用就出来了。

在表建立时常把一个实体的所有信息存放在在一张表中,当查询数据时,通过连接操作查询出存放在多个表中的不同实体的信息。

1.内连接查询(inner join)。

内连接也常写为join,省略inner。根据所关联的字段进行匹配,将匹配上的数据组合成新的记录,也就是所,在内连接查询中,只有满足条件的记录才会出现在结果关系中。关联,即字段名可以不同,但是里面的数据一点要有相同的。

# 查询出table1表和table2中同时存在的信息
select a.name,a.price from table1 a join table2 b on a.name=b.name;
# 需要注意的是在内连接关联中选择输出字段要指定是哪一个表的,因为同时存在与两个表中的相同字段时不加以指定会报错,所以指定是来自哪一个表中的字段时一个很好的习惯。

2.外连接查询。

外连接查询又可以细分为左连接和右连接。左连接是将左表作为基础表,右表可以关联上的数据进行组合,关联不上的作为null,而有关联和做关联正好相反。一般在实际的应用中主要用到的是做关联,因为更符合人们的阅读习惯。

# 左连接 left join
select name,price from table1 a left join table2 b on a.name=b.name;# 右连接 right join
select name,price from table1 a right join table2 b on a.name=b.name;

3.连接多条件查询

在多表查询中简单一个条件可能会导致查询的结果不是很准确,所以需要多个条件进行过滤,从而使得查出的数据更为准确。

# 在on后面进行多条件过滤会使得查出来的数据更为准确。
select name ,price from table1 a join table2 b on a.name=b.name and b.name='shang';

SQL中常见的几种连接方法-(内连接,左连接,右连接)相关推荐

  1. 机器学习中常见的几种归一化方法以及原因

    在机器学习中,数据归一化是非常重要,它可能会导致模型坏掉或者训练出一个很奇怪的模型,为了让机器学习的模型更加适合实际情况,需要对数据进行归一化处理. 1.机器学习中常用的归一化方法: 2. 不同归一化 ...

  2. 计算机无法连接网络的原因主要有哪几种,电脑连不上网常见的几种处理方法

    电脑无法联网的原因太多了,这里是我自己在日常生活中总结的一些经验来告诉大家如何去处理网络无法使用的问题,希望大家在遇到问题的时候可以很有效的拿来参考学习,同时也能提升自己处理问题的能力. 1.检查网络 ...

  3. 数据科学中常见的9种距离度量方法(包括曼哈顿距离、欧氏距离、半正矢距离等)

    数据科学中常见的9种距离度量方法(包括曼哈顿距离.欧氏距离.半正矢距离等) 1.欧氏距离(Euclidean Distance) 2.余弦相似度(Cosine Similarity) 3.汉明距离(H ...

  4. C++中常见的几种输入字符串的方法

    C++中常见的几种输入字符串的方法_是赵薰薰呀的博客-CSDN博客_c++输入字符串 可以用的函数 substr substr有2种用法: 假设:string s = "0123456789 ...

  5. 对Java中常见的四种I/O模型理解

    对Java中常见的四种I/O模型理解 1.1 知识科普 1.1.1 同步阻塞I/O(Blocking I/O) 1.1.1.1 阻塞与非阻塞 1.1.1.2 同步与异步 1.1.1.3 同步阻塞I/O ...

  6. python中的pandas的两种基本使用_pandas中join()的两种应用方法

    pandas中join()方法很神奇,join()方法虽然是连接方法,但是因为pandas有两个数据结构,join()方法针对两个数据结构有着不同的连接方法:1.根据指定的分隔符将Series中的各个 ...

  7. SQL中常见的6个报错

    本篇讲讲SQL中常见的一些报错,内容节选自<对比Excel,轻松学习SQL数据分析>一书. 1 表名错误 如果数据库中没有某张表,或者你在写代码的时候把表名写错了,都会导致程序找不到这张表 ...

  8. JavaScript:JavaScript中常见获取对象元素的方法

    介绍: javascript中常见的3种获取元素的方法,分别是通过元素ID.通过标签名字和通过类名字来获取 操作如下: 1.getElementById DOM提供了一个名为getElementByI ...

  9. python中常用的九种预处理方法

    本文总结的是我们大家在python中常见的数据预处理方法,以下通过sklearn的preprocessing模块来介绍; 1. 标准化(Standardization or Mean Removal ...

最新文章

  1. 2022-2028年中国钢轨探伤车行业市场研究及前瞻分析报告
  2. 小程序一次性上传多个本地图片,上拉加载照片以及图片加载延迟解决之道
  3. 使用移动设备 连接到Exchange Server 2007
  4. C++ puts函数 打印字符串很方便
  5. rfcv函数实现_OpenSSL AES_ctr128_encrypt()作为伪随机函数在RFC3711(SRTP)
  6. Qt笔记-Q3DScatter中元素的移动和旋转
  7. 未能连接到许可证服务器 发生错误 -96,ug启动许可证错误怎么办 UG软件启动许可证错误96解决方法...
  8. 使用haskell来解线性方程
  9. 安编译器错误_centos 安装pcre报c++编译器错误
  10. 用Winhex软件定位NTFS文件系统的不明白之处
  11. eclipse环境的搭建以及JDK的安装步骤详细
  12. windows/system32/winload.exe系统无法登录报错428的快速解决方法
  13. 岩土工程颗粒流软件PFC6.0实用技巧——将abaqus网格转换成PFC流体网格
  14. Cox回归和HR值理解要点难点,实例讲解
  15. python随机密码生成程序
  16. word中套用表格样式在哪里_在Word2010中,关于“套用内置表格样式”的用法,下列说法正确的是_学小易找答案...
  17. SHELL命令里面的EQ、NE、GT、LT、GE、LE分别是什么意思
  18. python哪个方向工资高_学完Python的7大就业方向,哪个赚钱多?
  19. 怎么才能让小孩主动帮忙做家务?
  20. 点击切换下一页上一页

热门文章

  1. 股票python量化交易028-easytrader调用同花顺自动交易弹出验证码的处理
  2. 家长控制与火绒的结合——限制电脑与手机娱乐
  3. 什么是web语义化,有什么好处
  4. [轉貼] 华中科技大学校长李培根在2010届毕业典礼上的演讲全文
  5. 【浙大版《Python 程序设计》题目集(解)】第6章-7 找出总分最高的学生(15分)
  6. 使用ExitProcess()结束本进程,TerminateProcess()结束进程
  7. 计算机学校里教的严重脱节吗,浅析中等职业学校非计算机专业计算机课程教学的改革...
  8. 作为产品经理,你目前薪资多少呢?
  9. 爱拼车猝死:BAT阴影下互联网创业如何进行?
  10. Maven+Spring+Spring MVC+MyBatis+MySQL,搭建SSM框架环境【转】