MySQL 的七种 Join

创建表

快速到底

学生表

create table student(
  id int(11) not null AUTO_INCREMENT,
  name varchar(30),
  address varchar(40),
  primary key (id)
) engine=innodb charset=utf8;

INSERT INTO student(name,address) VALUES(‘田开智‘,‘安徽省天长市‘);
INSERT INTO student(name,address) VALUES(‘陶沪生‘,‘安徽省铜陵市‘);
INSERT INTO student(name,address) VALUES(‘石冬冬‘,‘安徽省安庆市‘);
INSERT INTO student(name,address) VALUES(‘魏忠原‘,‘安徽省滁州市‘);
INSERT INTO student(name,address) VALUES(‘田永恒‘,‘安徽省阜阳市‘);
INSERT INTO student(name,address) VALUES(‘熊发挥‘,‘安徽省天长市‘);

成绩表

create table chengji(
  id int(11) not null AUTO_INCREMENT,
  socre float(5,2),
  primary key (`id`)
) engine=innodb charset=utf8;

INSERT INTO chengji(socre) VALUES(95.54);
INSERT INTO chengji(socre) VALUES(124.4);
INSERT INTO chengji(socre) VALUES(130.0);
INSERT INTO chengji(socre) VALUES(135);
INSERT INTO chengji(socre) VALUES(149.547);

INSERT INTO chengji(id,socre) VALUES(7,140);

内链接

内链接文氏图

左外连接

左外连接文氏图

右外连接

右外连接文氏图

左连接

左连接文氏图

右连接

右连接文氏图

全连接

全连接文氏图

去掉交集

文氏图

原文地址:https://www.cnblogs.com/tkzL/p/9531627.html

时间: 2024-07-30 16:04:42

MySQL 的七种 Join的相关文章

Mysql 的七种 join sql 编写

首先创建两张表 CREATE TABLE `t_user` ( `id` bigint(16) NOT NULL AUTO_INCREMENT, `name` varchar(64) NOT NULL, `age` int(4) NOT NULL, `gender` tinyint(2) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 CREATE TABLE `cust

MYSQL 的七种join

建表 在这里呢我们先来建立两张有外键关联的张表. CREATE DATABASE db0206; USE db0206; CREATE TABLE `db0206`.`tbl_dept`( `id` INT(11) NOT NULL AUTO_INCREMENT, `deptName` VARCHAR(30), `locAdd` VARCHAR(40), PRIMARY KEY (`id`) ) ENGINE=INNODB CHARSET=utf8; CREATE TABLE `db0206`.

【知识库】-数据库_MySQL 的七种 join

作者:haifeisi 文章出处: MySQL 的七种 join 创建数据库表'tbl_dept'和'tbl_emp' CREATE DATABASE db0206; USE db0206; CREATE TABLE `db0206`.`tbl_dept`( `id` INT(11) NOT NULL AUTO_INCREMENT, `deptName` VARCHAR(30), `locAdd` VARCHAR(40), PRIMARY KEY (`id`) ) ENGINE=INNODB C

Mysql七种 JOIN 连接

内连接 SELECT <select_list> FROM TableA A INNER JOIN TableB B ON A.Key = B.Key 左外连接 SELECT <select_list> FROM TableA A LEFT JOIN TableB B ON A.Key = B.Key SELECT <select_list> FROM TableA A LEFT JOIN TableB B ON A.Key = B.Key WHERE B.Key IS

七种join的sql编写

一.join图 二.sql演示 a.创建演示表及数据 SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for `tbl_dept` -- ---------------------------- DROP TABLE IF EXISTS `tbl_dept`; CREATE TABLE `tbl_dept` ( `id` int(11) NOT NU

MySql中三种Join以及Where条件的疑惑

MySQL JOIN时条件放在Where之后和On之后结果是迥然不同的 在Left Join的时候on后的左表条件不生效 Right Join的时候on后的右表条件不生效 即左或右连接的时候on后的主表条件不生效 select * from a left join b on a.id=b.id and a.name=1 and b.age=2; 这里只有b.age=2能生效a.name=1不生效 在Inner Join的时候on后的条件不论主表从表都能生效. 在left或者right join的

只显示前几条数据的sql语句写法 七种数据库中Select Top的使用方法

七种数据库中Select Top的使用方法 1. Oracle数据库 SELECT * FROM TABLENAME WHERE ROWNUM <= N 2. Infomix数据库 SELECT FIRST N * FROM TABLENAME 3. DB2数据库 SELECT * FROM (SELECT * ROW_NUMBER() OVER({ORDER BY COL1 DESC}) AS ROWNUM FROM TABLENAME) WHERE ROWNUM <= N 或者 SELEC

数据事务四种隔离机制和七种传播行为

一.隔离级别: 数据库事务的隔离级别有4个,由低到高依次为Read uncommitted.Read committed.Repeatable read.Serializable,这四个级别可以逐个解决脏读.不可重复读.幻读这几类问题. 1. ISOLATION_READ_UNCOMMITTED:这是事务最低的隔离级别,它充许令外一个事务可以看到这个事务未提交的数据.      这种隔离级别会产生脏读,不可重复读和幻像读.2. ISOLATION_READ_COMMITTED:保证一个事务修改的

MySQL的联结(Join)语法

MySQL的联结(Join)语法 1.内联结.外联结.左联结.右联结的含义及区别: ? 在讲MySQL的Join语法前还是先回顾一下联结的语法,呵呵,其实连我自己都忘得差不多了,那就大家一起温习吧(如果内容有错误或有疑问,可以来信咨询:陈朋奕chenpengyi#gmail.com),国内关于MySQL联结查询的资料十分少,相信大家在看了本文后会对MySQL联结语法有相当清晰的了解,也不会被Oracle的外联结的("+"号)弄得糊涂了. ? 在SQL标准中规划的(Join)联结大致分为