点击复制data.sql数据库

一、内连接查询 inner join

关键字:inner join on
  
示例语句:select a inner join b on a.name=b.name

说明:组合两个表中的记录,返回关联字段相符的记录,也就是返回两个表的交集部分。

二、左连接查询 left join

关键字:left join on / left outer join on

语句:select * from a left join b on a.name=b.name

说明: left join 是left outer join的简写,它的全称是左外连接,是外连接中的一种。 左(外)连接,左表的记录将会全部表示出来,而右表只会显示符合搜索条件的记录。右表记录不足的地方均为NULL。即相当于搜索左表的差集

三、右连接 right join

关键字:right join on / right outer join on

语句:select * from a right join b on a.name=b.name

说明:right join是right outer join的简写,它的全称是右外连接,是外连接中的一种。与左(外)连接相反,右(外)连接,左表(a_table)只会显示符合搜索条件的记录,而右表(b_table)的记录将会全部表示出来。左表记录不足的地方均为NULL。

四、全连接 union

关键字:union /union all (这里只介绍union all)

语句:1,select * from a where a.id<3 union all select * from b where b.id>1
   2,select * from a where a.id<3 union all select * from b where b.id>1 order by id desc
   
说明:说白了,就是两个sql 语句合起来,即求并集


使用数据库

-- phpMyAdmin SQL Dump
-- version phpStudy 2014
-- http://www.phpmyadmin.netSET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";-- 数据库: `a`
CREATE DATABASE `a` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE `a`;-- 表的结构 `a`
CREATE TABLE IF NOT EXISTS `a` (`id` int(11) NOT NULL,`name` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;-- 转存表中的数据 `a`INSERT INTO `a` (`id`, `name`) VALUES
(1, '张三'),
(2, '李四'),
(3, '王二麻子'),
(4, '玻璃杯子'),
(5, '小红'),
(4, '小明');-- ---------------------------------------------------------- 表的结构 `b`
CREATE TABLE IF NOT EXISTS `b` (`id` int(11) NOT NULL,`name` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;-- 转存表中的数据 `b`
INSERT INTO `b` (`id`, `name`) VALUES
(1, '张三'),
(2, '李四'),
(3, '王二麻子'),
(4, '玻璃杯子'),
(5, '花花'),
(6, '站站');

mysql查询语句内连接、左连接、右连接以及全连接查询相关推荐

  1. 【MySQL】MySQL 的连接(内、左、右、全)

    一.表 的连 结 1.目的:减少数据的冗余 2.核心:分类 ***连接时至少要两张表,连接主要有内连接(inner join).左外连接(left outer join).右外连接(right out ...

  2. 区分笛卡儿积,自然连接,等值连接,内连接,外连接—左,右

    1.笛卡尔积 笛卡儿积,不用多说,返回所有的情况. 2.自然连接 自然连接是在广义笛卡尔积R×S中选出同名属性上符合相等条件元组,再进行投影,去掉重复的同名属性,组成新的关系.自然连接是一种特殊的等值 ...

  3. 内连接(join、inner join )、左连接(left join) 、全连接(full join)

    建表: drop table t_test1; drop table t_test2; create table t_test1( aid number(10), aname varchar2(40) ...

  4. oracle full outer join,oracle 内连接(inner join)、外连接(outer join)、全连接(full join)...

    建表语句: create table EMPLOYEE ( EID NUMBER, DEPTID NUMBER, ENAME VARCHAR2(200) ) create table DEPT ( D ...

  5. 一条SQL查询语句的执行过程,一张图说清SQL查询语句执行过程

    一张图说明 一条SQL查询语句的执行过程 一条sql语句从发送到数据库到它执行完成并返回结果,主要经历以下几个过程: 连接器->查询缓存(如果开启了查询缓存,则会经过这一步,但是大多数情况下都是 ...

  6. 对于LIMITE,Mysql优化器导致的有时候不走索引而是走全表查询

    使用Mysql官方数据库sakila作示例 首先查看actor表内索引 有一个主键索引(聚簇索引)和一个last_name字段的二级索引          这里我是想走聚簇索引找出第一条id,当然这里 ...

  7. linux 全连接队列,TCP半连接队列和全连接队列的可能和出现问题和解决方案

    问题描述 监控系统发现电商网站主页及其它页面间歇性的无法访问: 查看安全防护和网络流量.应用系统负载均正常: 系统重启后,能够暂时解决,但持续一段时间后间歇性问题再次出现. 此时问题已影响到整个网站的 ...

  8. oracle 查询语句取别名,实用sql查询语句详解1:给列取别名、查询部分行、多列排序...

    SQL(Structured Query Language)是用于访问和处理数据库的标准计算机语言,是所有数据库查询的语言,无论是高级查询还是低级查询, 文章介绍了包括查询全部的行和列.给列取别名.查 ...

  9. c++中实现域内,左,右对齐的方法

    需要包含头文件 实现域内左对齐 int main() {cout.setf(ios::left);//for (int i = 0; i < 5; i++)cout << setw( ...

  10. MySQL in语句内参数个数限制

    Oracle中,in语句中可放的最大参数个数是1000个.之前遇到超过1000的情况,可用如下语句,但如此多参数项目会低,可考虑用别的方式优化. select * from Table where i ...

最新文章

  1. 沃通免费SSL证书申请指南
  2. 【二维树状数组】See you~
  3. python主要运用于-python主要用于
  4. 680. 验证回文字符串 Ⅱ
  5. php mysql 秒杀_redis+PHP实现高并发下秒杀数据入库的问题
  6. 由于找不到appvisvsubsystems32.dll_老实人就别找女朋友了 跟个老实人结婚有多累_新闻资讯...
  7. 14.链表中倒数第k个结点
  8. 老去的80后忆当年-致80后的朋友们
  9. 借助Bilibili Evolved批量下载b站视频
  10. 几款优秀的Windows密码抓取工具
  11. java4.25生成车牌号_泸牌16年涨882倍 超25万人拍一张车牌为哪般?
  12. NPS净推荐值 客户忠诚度指标
  13. JAVA中黄金分割点的问题
  14. im开源java框架_开源的im即时通讯系统
  15. 低代码平台和专业开发人员——完美搭档?
  16. mp4 转 mp3 命令行工具(超快)
  17. calc(100% - 200px)调整大小
  18. 【测控电路】滤波电路
  19. 计算机中的英语六级作文万能模板,六级作文通用万能模板
  20. 博览群书:谷歌软件测试之道

热门文章

  1. Atitit Mysql查询优化器 存取类型 范围存取类型 索引存取类型 AND or的分析
  2. Swift - EasingAnimation绘制圆环动画
  3. C++:怎样把一个int转成4个字节?
  4. 基于visual Studio2013解决C语言竞赛题之1030计算函数
  5. Bug人生---初看windows核心编程有感
  6. 拓端tecdat|R语言旅行推销员问题TSP
  7. 拓端tecdat|在PYTHON中进行主题模型LDA分析
  8. 《SpringBoot实战》笔记1
  9. 7、matplotlib条形图的绘制
  10. jupyterlab中使用conda虚拟环境