首页 > 数据库 >mysql组合查询

mysql组合查询

时间:2023-01-24 14:45:37浏览次数:39  
标签:product vendor 组合 price 查询 mysql WHERE id

多数SQL查询都只包含从一个或多个表返回数据的单条select语句。MYSQL也允许执行多个查询并将结果作为单个查询结果集返回。

两种基本情况,其中需要使用组合查询:

①在单个查询中从不同的表返回类似结构的数据。

②对单个表执行多个查询,按单个查询返回数据。

使用union

使用union来合并多个select语句的结果,会自动取消重复行,使用union all 不会取消重复行。

-- 合并
-- 取商品价格在[10,30]的物品,和供应商1002和1003提供的所有物品。
SELECT vendor_id, product_name, product_price FROM _products WHERE product_price > 10 AND product_price < 30
UNION
SELECT vendor_id, product_name, product_price FROM _products WHERE vendor_id IN (1002, 1003);

-- union all
SELECT vendor_id, product_name, product_price FROM _products WHERE product_price > 10 AND product_price < 30
UNION ALL
SELECT vendor_id, product_name, product_price FROM _products WHERE vendor_id IN (1002, 1003);

 

 

 select语句的输出用order by字句来排序,在union组合查询时,只能使用一条order by语句,必须出现在最后一个select语句之后。

-- union all
SELECT vendor_id, product_name, product_price FROM _products WHERE product_price > 10 AND product_price < 30
UNION ALL
SELECT vendor_id, product_name, product_price FROM _products WHERE vendor_id IN (1002, 1003)
ORDER BY vendor_id, product_price;

 

标签:product,vendor,组合,price,查询,mysql,WHERE,id
From: https://www.cnblogs.com/dadishi/p/17066066.html

相关文章

  • mysql联接表
    建立两张表:①供应商vendors表,包含id和名字。CREATETABLEvendors(idINTPRIMARYKEY,vendor_nameVARCHAR(25));②商品表_products,包......
  • Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hi
    Hadoop离线是大数据生态圈的核心与基石,是整个大数据开发的入门。本次分享内容让初学者能高效、快捷掌握Hadoop必备知识,大大缩短Hadoop离线阶段学习时间,下面一起开始今天的学......
  • Linux-CentOS布署MySQL5.7
             ......
  • MySQL分库分表方案
    1导读各位小伙伴,在目前企业级开发中采用Mysql做为数据库是一个主流选择,而当数据量比较大的情况下,为了支撑项目的正常快速的运行,我们不得不选择对数据库分库分表操作,本章节......
  • mysql使用子查询
    定义三个表:①order表,包含订单号order_num和客户id(cust_id),此表表示客户的购物记录。CREATETABLE`order`(order_numINT,cust_idINT);SELECT*FROM......
  • MySQL 日期函数、时间函数在实际场景中的应用
    整理日常业务中用到日期函数的一些场景,并对日期函数按照使用类型做了分类,实例也尽可能符合日常需求。为了方便查阅,可以先看目录,再根据需要看具体方法和实例。首先明确日期......
  • MySQL中IN和ANY的区别是什么
    MySQL中IN和ANY用于比较两个表达式是否相等。IN用于检查一个值是否在一个列表中。语法为:valueIN(list)。例如:CopycodeSELECT*FROMordersWHEREcustomer_idIN(1,......
  • MySQL 性能优化浅析及线上案例
    作者:京东健康孟飞1、数据库性能优化的意义业务发展初期,数据库中量一般都不高,也不太容易出一些性能问题或者出的问题也不大,但是当数据库的量级达到一定规模之后,如果缺失......
  • coredns mysql 扩展使用+readyset 试用
    基于db进行dns记录的管理还是比较有用的,尤其在一些开发环境中,以下是一个使用同时也会尝试集成readyset(但是木有成功,应该是mysql编码兼容的问题)添加&构建插件方法比......
  • MySQL笔记01: MySQL入门_1.2 MySQL下载安装与配置
     2.2MySQL下载安装与配置 2.2.1MySQL下载  MySQL中文官网:https://www.mysql.com/cn/   MySQL英文官网:https://www.mysql.com/   MySQL官网下载地址:h......