4.1带In 关键字的子查询

一个查询语句的条件可能落在另一个SELECT 语句的查询结果中。

SELECT * FROM t_book WHERE booktypeId IN (SELECT id FROM t_booktype);
SELECT * FROM t_book WHERE booktypeId NOT IN (SELECT id FROM t_booktype);

4.2 带比较运算符的子查询

子查询可以使用比较运算符。

SELECT * FROM t_book WHERE price>=(SELECT price FROM t_pricelevel WHERE priceLevel=1);

4.3 带Exists 关键字的子查询

假如子查询查询到记录,则进行外层查询,否则,不执行外层查询;

SELECT * FROM t_book WHERE EXISTS (SELECT * FROM t_booktype);
SELECT * FROM t_book WHERE NOT EXISTS (SELECT * FROM t_booktype);

4.4 带Any 关键字的子查询

ANY 关键字表示满足其中任一条件;

SELECT * FROM t_book WHERE price>= ANY (SELECT price FROM t_pricelevel);

4.5 带All 关键字的子查询

ALL 关键字表示满足所有条件;

SELECT * FROM t_book WHERE price>= ALL (SELECT price FROM t_pricelevel);

合并查询结果

5.1 UNION

使用UNION 关键字是,数据库系统会将所有的查询结果合并到一起,然后去除掉相同的记录;

SELECT id FROM t_book UNION SELECT id FROM t_booktype;

5.2 UNION ALL

使用UNION ALL,不会去除掉系统的记录;
SELECT id FROM t_book UNION ALL SELECT id FROM t_booktype;

为表和字段取别名

6.1 为表取别名

格式: 表名 表的别名

SELECT * FROM t_book t WHERE t.id=1;

SELECT t.bookName FROM t_book t WHERE t.id=1;

6.2 为字段取别名

格式: 属性名 [AS] 别名

SELECT t.bookName bName FROM t_book t WHERE t.id=1;
SELECT t.bookName AS bName FROM t_book t WHERE t.id=1;

mysql 子查询 合并查询的更多相关文章

  1. sql 内连接 子查询 合并查询

    -- 内连接:-- 显示员工姓名.工资和公司所在地 select e.ename, e.sal, d.dname from emp e,dept d; -- 笛卡尔积 select e.ename, ...

  2. oracle 基础SQL语句 多表查询 子查询 分页查询 合并查询 分组查询 group by having order by

    select语句学习 . 创建表 create table user(user varchar2(20), id int); . 查看执行某条命令花费的时间 set timing on: . 查看表的 ...

  3. mysql——多表——合并查询结果

    合并查询结果 合并查询结果 是将多个select语句的查询结果合并到一起 union关键字,数据库会将所有的查询结果合并到一起,然后除掉相同的记录: union all关键字,只是简单的合并到一起 前 ...

  4. [MySQL]子语句的查询技巧

    一.统计group by语句的行数 group by语句中,如果包含字段统计函数(诸如:count(),sum()...),这种情况下统计函数只会作用于group by的字段,因此想拿到最终结果的行数 ...

  5. mysql表查询、多表查询(增强查询的使用)子查询、合并查询,外连接,mysql5种约束,自增长

    一.查询加强 1.在mysql中,日期类型可以直接比较,需要注意格式 2.%:表示0到多个字符, _:表示单个字符 exp:显示第二个字符为大写O的所有员工的姓名和工资 select  name fr ...

  6. Mysql子查询、关联查询

    mysql中update.delete.install尽量不要使用子查询 一.mysql查询的五种子句         where(条件查询).having(筛选).group by(分组).orde ...

  7. MySQL之多表查询一 介绍 二 多表连接查询 三 符合条件连接查询 四 子查询 五 综合练习

    MySQL之多表查询 阅读目录 一 介绍 二 多表连接查询 三 符合条件连接查询 四 子查询 五 综合练习 一 介绍 本节主题 多表连接查询 复合条件连接查询 子查询 首先说一下,我们写项目一般都会建 ...

  8. mysql子查询 exists,not exists,all和any

    (1)实现让结果集A - 结果集B:--利用not exists,合并则可用union . exists,not exists:用于判断且获取结果集A是否存在地结果集B中! ==========结果集 ...

  9. MySQL子查询的优化

    本文基于MySQL5.7.19测试 创建四张表,pt1.pt2表加上主键 mysql> create table t1 (a1 int, b1 int); mysql> create ta ...

随机推荐

  1. iOS 蓝牙开发详解

    目前iOS智能硬件的开发交互方式主要分为两种,一种是基于低功耗的蓝牙4.0技术(由于耗电低,也称作为BLE(Bluetooth Low Energy))对应iOS的框架为CoreBluetooth,另 ...

  2. 导入的Java Web项目提示找不到javax.servlet.http.*包

    在网上下载了个Java web项目,导入到eclipse发现以下错误 解决办法: 1.右击项目,进入Configure Build Path 2.在Libraries标签下点击Add Library. ...

  3. CEO、COO、CFO、CTO、CIO是什么意思/?

    CEO Chief Executive Officer 首席执行官 COO Chief Operating Officer 首席运营官 CFO Chief Financial Officer 首席财务 ...

  4. java8新特性-函数式接口详细讲解及案例

    一.函数式接口 1.1 概念 函数式接口在Java中是指:有且仅有一个抽象方法的接口.函数式接口,即适用于函数式编程场景的接口.而Java中的函数式编程体现就是Lambda,所以函数式接口就是可 以适 ...

  5. pandas 学习笔记【持续更新】

    import numpy as np import pandas as pd import matplotlib.pyplot as plt df1 = pd.DataFrame(np.arange( ...

  6. LeetCode——15. 三数之和

    给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组. 注意:答案中不可以包含重复的三元组. ...

  7. linux查看显卡

    查看 nvidia 显卡 $ lspci | grep -i nvidia 02:00.0 3D controller: nVidia Corporation Device 1023 (rev a1) ...

  8. PAT甲级——1005.SpellItRight(20分)

    Given a non-negative integer N, your task is to compute the sum of all the digits of N, and output e ...

  9. 虹软最新版 python 接口 完整版

    虹软最新版 python 接口 完整版 当前开源的人脸检测模型,识别很多,很多小伙伴也踩过不少坑.相信不少使用过dlib和facenet人脸识别的小伙伴都有这样的疑惑,为什么论文里高达99.8以上的准 ...

  10. Hive(二)—— 架构设计

    Hive架构 Figure 1 also shows how a typical query flows through the system. 图一显示一个普通的查询是如何流经Hive系统的. Th ...