24.MySQL中的联合查询(UNION)

本文介绍了MySQL中的联合查询,重点讲解了UNION关键字的使用,包括其语法、功能,以及在处理分表查询时的应用。通过案例展示了如何进行多表数据的合并,并讨论了ALL与DISTINCT选项对结果的影响。
摘要由CSDN通过智能技术生成

1.简介

联合查询是多表查询的一种方式,经常应用在分表操作中,在保证多个SELECT语句的查询字段数相同的情况下,合并多个查询的结果。

语法

SELECT …
UNION [ALL | DISTINCT] SELECT …
[UNION [ALL | DISTINCT] SELECT …];

UNION是实现联合查询的关键字。

ALL表示保存所有的查询结果。

DISTINCT是默认值,可以省略,表示去除完全重复的记录

2.准备

CREATE DATABASE mahaiwuji;

USE mahaiwuji;

CREATE TABLE student1 (
	sid INT (4) PRIMARY KEY,
	sname VARCHAR (36),
	score INT
) ENGINE = INNODB DEFAULT CHARSET = utf8;

INSERT INTO student1 VALUES (1,'a1',60);
INSERT INTO student1 VALUES (2,'a2',65);
INSERT INTO student1 VALUES (3,'a3',70);
INSERT INTO student1 VALUES (4,'a4',75);
INSERT INTO student1 VALUES (5,'a5',80);


CREATE TABLE student2 (
	sid INT (4) PRIMARY KEY,
	sname VARCHAR (36),
	score INT
) ENGINE = INNOD
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL联合查询是一种将多个查询结果合并为一个结果集的查询方式。它可以通过使用UNIONUNION ALL关键字来实现。UNION关键字用于合并多个查询结果,并去除重复的行,而UNION ALL则保留所有的行,包括重复的行。联合查询可以用于在一个查询获取多个相关表的数据,并且可以根据需要对结果进行排序和筛选。 要进行联合查询,需要在SELECT语句使用相同的列数和相同的数据类型。例如,我们可以使用以下查询来进行联合查询: SELECT student.name AS 学生名字, course.name AS 课程名字, score.score FROM student JOIN score ON student.id = score.student_id JOIN course ON score.course_id = course.id; 这个查询将返回一个结果集,包含学生的名字、课程的名字和对应的分数。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [MySQL数据库增删改查进阶 — 聚合查询、分组查询联合查询](https://blog.csdn.net/m0_63033419/article/details/127956722)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [MySql整理(基础进阶运维).docx](https://download.csdn.net/download/qq441540598/88192019)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值