下面讲一下mySql中的union和union all 的功能以及区别

A union B 是将表A的数据和表B的数据连接成一张表,前提是查询的两张表的列数一定要一样否则出错。

A union all B 功能和union基本一样,区别在于union 会把两条一样的语句合并成一条,union all则全部显示出来。

下面具体列子说明:

表A数据

nameA   scoreA

robin     98
nami     99
saber    98
luffy     99

---------------------

表B数据

nameB  scoreB

luffy     99
zoro     98
sanji    98

--------------------

下面先看union all 查询数据表C

SELECT nameA,scoreA FROM A UNION ALL SELECT nameB,scoreB FROM B

nameA   scoreA

robin     98
nami     99
saber    98
luffy     99
luffy     99
zoro     98
sanji     98

----------------------

下面看union查询数据表D

SELECT nameA,scoreA FROM A UNION SELECT nameB,scoreB FROM B;

nameA   scoreA

robin     98
nami     99
saber     98
luffy     99
zoro     98
sanji     98

----------------------

由上述数据可以看出绿色的是表A的数据 桔黄色是表B的数据

可见union all是将A表的数据和B表的数据连接起来形成表C,union all显然是将两表的第一列和第二列分别首位相连....所以条件是两张表查询的列数必须一样,否则出错。。。

union功能和 union all是一样的。唯一区别在于红色部分luffy,表A中和表B中都存在luffy 99,此时union和union all区别就出来了union all 不管三七二十一全部显示出来,而union则是把A表的luffy 99 和B表的luffy 99合并成一条了....前提是两表中的两列数据必须全部相同才会合并....当然同一张表中的两列数据一模一样时也会合并....

MySQL 常用语法 之 UNION与UNION ALL的更多相关文章

  1. MySQL SELECT语法(四)UNION语法详解

    源自MySQL 5.7 官方手册:13.2.9.3 UNION Syntax 一.UNION语法 UNION用于将多个SELECT语句的结果合并到一个结果集中. SELECT ... UNION [A ...

  2. mysql常用语法操作

    一.用户管理: 1.新建用户: >CREATE USER name IDENTIFIED BY 'ssapdrow'; 2.更改密码: >SET PASSWORD FOR name=PAS ...

  3. MySQL常用语法命令及函数

    #创建数据库# create database 数据库名; #查看数据库# show databases; #选择数据库# use 数据库名; #删除数据库# drop database 数据库名; ...

  4. Mysql常用语法及入门开篇(一)

    数据:信息,记录.阅读: 数据库:数据的仓库,存储许多的数据(信息).按照数据结构来组件.存储和管理数据的,建立在计算机存储设备上的仓库. DBMS:   database management Sy ...

  5. 【MySQL】MySQL 常用语法之锁表与解锁表

    mysql 锁表语句: Lock锁整张表: 写锁定: LOCK TABLES products WRITE: 写锁,锁定之后,只有当前线程可以进行读操作和写操作,其他线程读操作和写操作均被堵塞.... ...

  6. MySQL常用语法总结

    一,学习mysql的前戏 1:基础入门命令 show databases: #查看当前MySQL中的所有数据库 create 数据库名: #创建新的数据库 use 数据库名: #使用该数据库 show ...

  7. mysql 常用语法

    --创建数据库 CREATE DATABASE DB_NAME; --选中数据库 USE DB_NAME; --列出数据库列表 SHOW DATABASES; --删除数据库 DROP DATABAS ...

  8. mysql常用语法

    创建表 create table <表名>( <字段名>  类型(长度) not null primary key auto_increment, **主键 name char ...

  9. MySQL 常用语法 之 DISTINCT

    DISTINCT作用很简单就是去除重复行的数据. 具体看下面列子 表A数据[两条 nami 99] nameA   scoreA robin    98 nami    99 saber  98 lu ...

随机推荐

  1. NRF24L01使用外部中断读取数据的问题

    NRF24L01读取数据不能使用中断的方式,原因如下: 首先NRF24L01中断触发时,IRQ引脚会一直保持低电平直到状态寄存器中的中断标志被重新清零. stm32的外部中断触发方式只有上升沿或者下降 ...

  2. java与java学习路线

    JAVA学习路线图 Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两个特征.Java语言作为静态面 ...

  3. css常用标签及属性

    css样式表常用的形式有三种,一.行内样式表.二.内部样式表.三.外部样式表 一. <p style="color:red;">nice to meet you< ...

  4. Xilinx全局时钟

    前言 Xilinx系列.ISE环境中,设计复杂工程时全局时钟系统的设计显得尤为重要. 一.时钟网络与全局缓冲 在XilinxFPGA中,时钟网络分为两类:全局时钟网络和I/O区域时钟网络.以全铜工艺实 ...

  5. unity hide/show text

    using UnityEngine;using System.Collections; public class PlayerController:MonoBehaviour{    public U ...

  6. Centos7安装TensorFlow

    TensorFlow也火了一段时间,想想既然要研究NLP.为什么不好好应用一下Google开源的Deep Learning平台呢,一切还是先从搭建好开发环境開始. 非常多大神们也做了这方面的工作.汲取 ...

  7. java.lang.IllegalStateException:Fragment XXXFragment{409864b0} not attached to Activity

    现象: 这类bug产生的现象就是在Fragment还没添加到Activity中时,去调用了Fragment的getResources().getString(R.string.xxx)这样的函数. 原 ...

  8. 如何創建一個自己的 Composer/Packagist 包 (PHP)

    如何創建一個自己的 Composer/Packagist 包 首先讓我們踏着歡快的腳步去Github創建一個新庫,這裏取名 composer-car,又歡快的將它克隆到本地: git clone ht ...

  9. jQuery实现的层级轮播图

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  10. LeetCode: Merge Intervals 解题报告

    Merge IntervalsGiven a collection of intervals, merge all overlapping intervals. For example,Given [ ...