MYSQL—— 基础入门,select 查询涉及到的关键字组合详解(进阶篇)
SELECT查询组合使用的关键字很多,首先将最简单常用的关键字进行区分及使用,后续再继续补充............
以下所有的关键字组合使用,主要以两个表students与students_score为主,进行练习,
(1)join:主要分为以下几种
join:
inner join(内连接或等值连接):取出两个表中存在连接匹配的记录表
right join(右连接):取得右表的全部记录,已右表为准
left join(左连接): 与right join相反
说明:1、mysql不支持Full join
2、已左连接为主,如果左表中的数据右表中也存在,则以左表为主显示数据, 2、已右连接为主,如果右表中的数据,左表中无,则以null填充
1) select sc.name,sc.math_score,s.name from students_score sc INNER JOIN students s on s.id = sc.id ;
2)select sc.name,sc.math_score,s.name from students_score sc JOIN students s on s.id = sc.id ;
3)select sc.name,sc.math_score,s.name from students_score sc left JOIN students s on s.id = sc.id ;
4)select sc.name,sc.math_score,s.name from students_score sc right JOIN students s on s.id = sc.id ;
5)(select sc.name from students_score sc right JOIN students s on s.id = sc.id) union (select s.name from students s left JOIN students_score sc on s.id = sc.id ); #
(2)limit: 强制select语句返回指定的记录数,支持1个或者2个数字(必为正整数)参数
SELECT * FROM students LIMIT ,; #第一个数字代表着从第几个开始(如:3,代表着从3开始,但是不包含3),第二个数字代表着显示几个
SELECT * FROM students LIMIT 1; #返回一条记录
示例:select id,tel from students where tel = '18392868125' limit ; #拉出一条tel为18392868125的数据
(3)group by: 分组功能
SELECT sex as '性别',avg(age) as '平均年龄' FROM students group by sex ORDER BY age desc; #根据性别显示平均年龄,并且按降序排列
对表students做的分组查询,运行结果显示如下:
(4)order by:排序
通过某些字段进行排序,order by后面跟上排序字段,可以跟多个字段,每个字段之间用逗号隔开,如果语句中有where子句,则order by必须放在where后,order by默认的排序是升序(ASC),降序使用(DESC)
select id,math_score from students_score ORDER BY math_score desc; #降序排列,默认升序,如需添加升序则用关键字“ASC”
(5)in: 允许在where字句中规定多个值
select * FROM students where id in(,,,); #取出ID为2,3,5,6的所有信息
(6)between....and......:取出某一区间的值
select * from students where id between and ;
in 与 between....and......的区别:in后面跟的是集合,between后面跟的是一个区间
(7)not: 不在什么中
select * from students where id not in(,,,);
(8)distinct :去掉重复的数值
select distinct tel from students; #拉出tel列去重数据,拉出tel列电话号码不重的数据
(9)union,连接两个表的查询结果
union all: union:会去掉重复的行。union all不去掉重复的行
(select id,math_score from students_score) UNION (select id,english_score from students_score);
(select id,math_score from students_score) UNION all (select id,english_score from students_score);
MYSQL—— 基础入门,select 查询涉及到的关键字组合详解(进阶篇)的更多相关文章
- MySQL执行SHOW STATUS查询服务器状态状态之Handler_read_* 详解
在MySQL里,我们一般使用SHOW STATUS查询服务器状态,语法一般来说如下: SHOW [GLOBAL | SESSION] STATUS [LIKE ‘pattern’ | WHERE ex ...
- Java基础入门 - 三种注释及文档注释详解
类似C/C++,Java也支持单行和多行注释 注释中的字符在编译时会被忽略 注释通常为类.变量和方法的主要描述 单行注释 // 注释内容 多行注释 /* 注释内容 */ /* * 注释内容 */ 文档 ...
- mysql 基础入门 单表查询
单表查询 select 表头,表头 as 别名 ,表头(+-*/的运算) from table_a 1.条件查询 where + 条件 <> , != 不等于 = 等于,也可以表示字符串值 ...
- 【转载】20分钟MySQL基础入门
原文:20分钟MySQL基础入门 这里持续更新修正 开始使用 MySQL 为关系型数据库(Relational Database Management System),一个关系型数据库由一个或数个表格 ...
- MySQL基础入门(1)
MySQL基础入门(1) 为什么学习MySQL 关系数据库管理系统(Relational Database Management System, RDBMS)是一种极为重要的工具,其应用十分广泛,从商 ...
- sql判断以逗号分隔的字符串中是否包含某个字符串--------MYSQL中利用select查询某字段中包含以逗号分隔的字符串的记录方法
sql判断以逗号分隔的字符串中是否包含某个字符串---------------https://blog.csdn.net/wttykj/article/details/78520933 MYSQL中利 ...
- 1、mysql基础入门(1)
1.mysql基础入门: 1.1.数据库介绍:
- vue2.x版本中computed和watch的使用入门详解-computed篇
前言 在基于vue框架的前端项目开发过程中,只要涉及到稍微复杂一点的业务,我们都会用到computed计算属性这个钩子函数,可以用于一些状态的结合处理和缓存的操作. 基础使用 在computed中,声 ...
- mysql用户授权、数据库权限管理、sql语法详解
mysql用户授权.数据库权限管理.sql语法详解 —— NiceCui 某个数据库所有的权限 ALL 后面+ PRIVILEGES SQL 某个数据库 特定的权限SQL mysql 授权语法 SQL ...
随机推荐
- 解决记录:win10 无法安装VS2017,visual studio installer下载进度始终为0
问题描述:win10 下无法安装VS2017,visual studio installer下载进度始终为0,点击取消按钮后,也没有反应,visual studio installer也关闭不掉: 具 ...
- 一个简单的例子搞懂ES6之Promise
ES5中实现异步的常见方式不外乎以下几种: 1. 回调函数 2. 事件驱动 2. 自定义事件(根本上原理同事件驱动相同) 而ES6中的Promise的出现就使得异步变得非常简单.promise中的异步 ...
- golang 二进制转十进制实现方式
golang 二进制转十进制实现方式 直接上代码 package main import ( "fmt" "math" ) func StringToIntAr ...
- .NetCore获取json文件配置内容
.netcore中的数据配置及内容用了json文件代替了之前framework的xml文件,那么json中的数据该怎么获取呢?下面讲解json文件在.net core中的获取方法. 首先,新建一个.n ...
- C 实现基于角色的权限系统
本文demo下载地址:http://www.wisdomdd.cn/Wisdom/resource/articleDetail.htm?resourceId=1068 实例使用C# 实现基于角色的权限 ...
- 神奇的namespace使用
一大波概念正在来袭: 作用域与命名空间 相关概念 与命名空间相关的概念有: 声明域(declaration region)—— 声明标识符的区域.如在函数外面声明的全局变量,它的声明域为 ...
- Angular4.x通过路由守卫进行路由重定向,实现根据条件跳转到相应的页面
需求: 最近在做一个网上商城的项目,技术用的是Angular4.x.有一个很常见的需求是:用户在点击"我的"按钮时读取cookie,如果有数据,则跳转到个人信息页面,否则跳转到注册 ...
- HTML学习笔记 day two
HTML学习笔记 day two Charter three网站中的文本样式标签 3.1设置标题字体 语法结构:<h#>标题文字</h#> 注:其中的#可以为1,2,3,4,5 ...
- VueJs(12)---vue-router(导航守卫,路由元信息)
vue-router(导航守卫,路由元信息) 之前泄露两篇有关vue-router博客: VueJs(10)---vue-router(进阶1) VueJs(11)---vue-router(进阶2) ...
- [Python学习之路] 猜大小游戏
# coding =utf-8 import random def roll_dice(number=3, points=None): if points == None: points = [] w ...