mysql 在连接表中的要点
思路:分析需求,分析字段来自哪些表 (连接查询)
确定使用哪种连接查询? 确定交叉点(这两个表中哪些数据是相同的)
判断条件 such as 学生表中的studentNO = 成绩表中studentNO(记得要加别名)
连接三张表
SELECT s.`StudentNO`,`StudentResult`,`StudentName`,`SubjiectName`
FROM `student` s
INNER JOIN `result` r
ON s.`StudentNO`=r.`StudentNO`
INNER JOIN `subject` sub
WHERE r.`SubjectNO`=sub.`SubjectNO`
所有的字符都要是英文的
要给表起别名 方便 用as or 空格
在连接三张表以上时提供一种思路:假设存在一种多张表查询,慢慢来不要想着一口吃成一个大胖子。先查询两张表然后再慢慢加
SELECT s.`StudentNO`,`StudentResult`,`StudentName`
FROM `student` s
RIGHT(left) JOIN `result` r
ON s.`StudentNO`=r.`StudentNO`
左和右是不一样的
left join :会从左表中返回所有的表,即使右表没有匹配
right join :会从右表中返回所有的表,即使左表没有匹配
------仅供参考
mysql 在连接表中的要点的更多相关文章
- MySQL查询数据表中数据记录(包括多表查询)
MySQL查询数据表中数据记录(包括多表查询) 在MySQL中创建数据库的目的是为了使用其中的数据. 使用select查询语句可以从数据库中把数据查询出来. select语句的语法格式如下: sele ...
- 转: 从Mysql某一表中随机读取n条数据的SQL查询语句
若要在i ≤ R ≤ j 这个范围得到一个随机整数R ,需要用到表达式 FLOOR(i + RAND() * (j – i + 1)).例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机 ...
- 从Mysql某一表中随机读取n条数据的SQL查询语句
若要在i ≤ R ≤ j 这个范围得到一个随机整数R ,需要用到表达式 FLOOR(i + RAND() * (j – i + 1)).例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机 ...
- 【杂记】mysql 左右连接查询中的NULL的数据筛选问题,查询NULL设置默认值,DATE_FORMAT函数
MySQL左右连接查询中的NULL的数据筛选问题 xpression 为 Null,则 IsNull 将返回 True:否则 IsNull 将返回 False. 如果 expression 由多个变量 ...
- mysql,user表中各字段的含义
1.查询user表 select * from mysql.user 2.修改用户密码 ALTER user ' 3.user表中各字段的含义 Select_priv:用户可以通过SELECT命令选择 ...
- mysql从一个表中拷贝数据到另一个表中sql语句
这一段在找新的工作,今天面试时,要做一套题,其中遇到这么一句话,从一个表中拷贝所有的数据到另一个表中的sql是什么? 原来我很少用到,也没注意过这个问题,面试后我上网查查,回来自己亲手写了写,测试了下 ...
- mysql mariadb 删除表中的数据时数据库变大
删除表中数据以前 [root@RM uar3]# du -sh * 3.3G apache-tomcat-7.0.54 150M instalRM4UAR 0 mariadb 903M mariadb ...
- mysql 从一个表中查数据,插入另一个表
其实很简单,只是为了忘记,做个记录,用的时候方便. 不管是在网站开发还是在应用程序开发中,我们经常会碰到需要将MySQL或MS SQLServer某个表的数据批量导入到另一个表的情况,甚至有时还需要指 ...
- mysql 定期删除表中无用数据
MySQL5.1.x版本中引入了一项新特性EVENT,定期执行某些事物,这可以帮助我们实现定期执行某个小功能,不在依赖代码去实现. 我现在有一张表,这张表中的数据有个特点,每天都会有大量数据插入,但是 ...
- MySQL查看 InnoDB表中每个索引的高度
我们都知道MySQL里,索引通常用B+树来实现的.B+树的叶子结点才具体保存数据(聚簇索引保存的是行数据:普通索引是主键,如有需要得回表),非叶子结点都是用来索引叶子结点的.假设索引高度为h,那么每次 ...
随机推荐
- 没有二十年功力,写不出Thread.sleep(0)这一行“看似无用”的代码!
你好呀,我是喜提七天居家隔离的歪歪. 这篇文章要从一个奇怪的注释说起,就是下面这张图: 我们可以不用管具体的代码逻辑,只是单单看这个 for 循环. 在循环里面,专门有个变量 j,来记录当前循环次数. ...
- Spring集成测试
Spring 集成测试 需要再类的头部加入 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration({"classpath ...
- sklearn中MLPClassifier源码解析
神经网络 .fit() 首先传入类私用方法._fit() 确定hidden_layer_size是可迭代的 调用_validate_hyperparameters验证超参数是否合法 验证输入的x和y是 ...
- flink-cdc实时同步mysql数据到elasticsearch
本文首发于我的个人博客网站 等待下一个秋-Flink 什么是CDC? CDC是(Change Data Capture 变更数据获取)的简称.核心思想是,监测并捕获数据库的变动(包括数据 或 数据表的 ...
- Windows服务器限制进程CPU使用率
在Windows server 2012 之前的服务系统 2008和2008 R2中有系统资源管理器System Resource Manager可以管理系统的CPU和内存使用情况.特别对于一些自己开 ...
- Github-CLI
Github-CLI Github 的官方命令行工具 Github CLI.Mac 系统可以通过 homebrew 安装或者直接下载免安装包来使用. 命令 Github CLI 的所有命令均以gh开头 ...
- Spring 后置处理器【1】
Spring 后置处理器[1] 简单介绍 一句话:bean 在初始化前或初始化后的瞬间,我自己添加一些业务逻辑 bean 后置处理器类的内容 简单代码 package com.hspedu.sprin ...
- Linux 使用 Systemd 管理进程服务
转载自:https://mp.weixin.qq.com/s/e-_PUNolUm22-Uy_ZjpuEA systemd 介绍 systemd是目前Linux系统上主要的系统守护进程管理工具,由于i ...
- MySQL5.6 & 5.7 配置 SSL
mysql5.7上开启并配置ssl [root@mysqlmaster01 bin]# ./mysql_ssl_rsa_setup --datadir=/data/mysql_data1/ --use ...
- 通过nginx转发rabbitmq访问手动添加队列的时候报错:Management API returned status code 405
原因: 正常访问该地址:https://xxx.xxx.com/rabbitmq/ 时能正常跳转,但是 rabbitmq management 的 API url 出现了 %2f 字符,这些字符会在经 ...