首页 > 数据库 >MySQL 联合查询

MySQL 联合查询

时间:2023-10-17 18:45:15浏览次数:30  
标签:table2 table1 JOIN name column 查询 联合 MySQL

MySQL 联合查询

在 MySQL 中,联合查询(也称为 JOIN 查询)是一种用于将多个表中的数据联接在一起的操作。这使得你可以从多个表中获取相关的数据,并创建复杂的查询。

以下是一些常见的联合查询类型和示例:

  1. 内连接(INNER JOIN):内连接用于获取两个或多个表之间具有匹配行的数据。只有在两个表之间存在匹配时,内连接才会返回数据。
SELECT column1, column2
FROM table1
INNER JOIN table2 ON table1.column_name = table2.column_name;
  1. 左连接(LEFT JOIN):左连接获取左表中的所有行,以及与右表中匹配的行。如果右表中没有匹配的行,将显示 NULL 值。
SELECT column1, column2
FROM table1
LEFT JOIN table2 ON table1.column_name = table2.column_name;
  1. 右连接(RIGHT JOIN):右连接获取右表中的所有行,以及与左表中匹配的行。如果左表中没有匹配的行,将显示 NULL 值。
SELECT column1, column2
FROM table1
RIGHT JOIN table2 ON table1.column_name = table2.column_name;
  1. 全外连接(FULL OUTER JOIN):全外连接获取两个表中的所有行,如果在一个表中没有匹配的行,将显示 NULL 值。
SELECT column1, column2
FROM table1
LEFT JOIN table2 ON table1.column_name = table2.column_name
UNION
SELECT column1, column2
FROM table1
RIGHT JOIN table2 ON table1.column_name = table2.column_name;
  1. 自连接:自连接是一种特殊的联合查询,用于将同一表中的不同行进行关联。这通常涉及使用不同的表别名来区分两个表实例。
SELECT e1.employee_name, e2.employee_name AS manager_name
FROM employees e1
LEFT JOIN employees e2 ON e1.manager_id = e2.employee_id;

这只是一些联合查询的示例,你可以根据需要使用不同的连接类型和多个表来创建更复杂的查询。确保你理解你的数据模型和查询需求,以选择适当的联接类型。

标签:table2,table1,JOIN,name,column,查询,联合,MySQL
From: https://www.cnblogs.com/yuzhihui/p/17770401.html

相关文章

  • MySQL 中的索引
    MySQL中的索引MySQL中的索引是一种用于提高查询性能的数据结构。索引允许数据库引擎更快地定位和访问数据,减少了数据扫描的开销。下面是关于如何在MySQL中使用索引的一些重要信息和最佳实践:创建索引:在创建表时定义索引:可以在创建表的时候定义索引,使用CREATETABLE语句的......
  • MySQL中对某列进行求和
    MySQL中对某列进行求和要在MySQL中对某列进行求和,你可以使用SUM聚合函数。以下是一个简单的示例,演示如何对某列进行求和:假设你有一个名为your_table的表,其中有一个列名为your_column,你想对这一列进行求和:SELECTSUM(your_column)ASsum_resultFROMyour_table;这将返回......
  • kettle同步mysql到mysql
    上传mysql驱动包到lib目录下创建表连接表输入表输出(没有创建表)执行表创建表sql ......
  • mysql json类型数据查询
    1、json对象1.1、方法使用对象操作的方法进行查询:字段->'$.json属性'使用函数进行查询:json_extract(字段,'$.json属性')获取JSON数组/对象长度:JSON_LENGTH()1.2、数据CREATETABLE`test`(`id`bigint(20)unsignedNOTNULLAUTO_INCREMENTCOMMENT'自增ID',`g......
  • SpringBoot 02 shiro框架查询用户权限与角色
      实体类 @Data@AllArgsConstructor@NoArgsConstructor@TableName("t_user")publicclassRUser{@TableId(value="id",type=IdType.AUTO)privateIntegerusrId;privateStringusrName;privateStringusrAccount;pri......
  • 线上mongo慢查询可能原因影响
    mongo主从节点影响python中pymongo库的MongoClient类中readPreference参数可选主从(primary,secondary),不指定默认为主节点线上部署的时候其实是有指定主从节点的连接类,但是后期开发在基类中从节点的方法逐渐被替代,导致后期的业务的查询压力来到了主节点......
  • Ubuntu 中 Mysql的简单使用
    起因:建立web服务器时需要使用数据库去保存用户名和密码。//建立yourdb库createdatabaseyourdb;//创建user表USEyourdb;CREATETABLEuser(usernamechar(50)NULL,passwdchar(50)NULL)ENGINE=InnoDB;//添加数据INSERTINTOuser(username,passwd)......
  • Oracle中如何根据查询sql片段定位查询客户端主机地址
    --1.根据sql片段获取sql_id--select*fromv$sqlwherelast_active_time>sysdateandsql_textlike'%ZL0204_03r%';selectsql_id,modulefromv$sqlwherelast_active_time>sysdateandsql_textlike'%ZL0204_03%';--2.根据sql_id查询sid......
  • docker 安装 nginx tomcat mysql
    dockersearchnginxdockerpullnginx//在root目录下创建nginx目录用于储层nginx数据信息mkdir~/nginxcdnginxmkdirconfcdconf把nginx.conf文件拷贝到~/nginx/con目录下cd~/nginxdockerrum-id--namenginx01\-p80:80\-v$PWD/conf/nginx.conf:/etc/nginx/n......
  • MySQL八股基础
    1.执行一条select语句,期间会发生什么?连接器:建立连接,管理连接,校验用户身份。查询缓存,查询语句命中直接返回,否则继续往下执行。MySQL8.0删除。解析器:解析SQL语句,对select语句执行词法分析、语法分析,构建语法树,方便后续模块读取表名、字段、语句类型。执行SQL语句。分为3个阶......