MySQL之SELECT 语句详解
本文参考实验楼的SELECT 语句详解结合自己操作部分而写成。
注意:大多数系统中,SQL语句都是不区分大小写的,但是出于严谨和便于区分保留字和变量名,在书写的时,保留字应大写,而变量名应小写。所谓的保留字,即为:在高级语言中已定义过的字,使用者不能将这些字作为变量名和过程名使用。
1)SELECT语句的基本格式是:SELECT 查询的列名 FROM 表名 WHERE 限制条件;在上一篇博客创建一个简单的成绩管理系统 中,使用SELECT * FROM employee代表查询所有的列。例如,要查看employee表中的 name、age两列,可以使用:这里值得注意的是age和FROM之间没有逗号,很容易写的顺手了,就写上去了,只有列名之间需要逗号。

2)数学符号条件,SELECT 语句中常常会有WHERE 限制条件,用于实现更为精确的查找。WHERE限制条件可以有数学符号(=、>、<、>=、<=),例如,我们可以查找出employee表中,年龄大于25岁的人的名字,如图:

当WHERE后面不止一条限制时,可以使用OR(或)和AND(和)来实现相应要求,如求可以用OR来实现年龄小于25,和年龄大于30的这两部分人的名字;相应地,年龄在25和30之间的,可以使用AND 来实现,如图,


求年龄在25和30之间的人名的另一种写法是:

3)关键词 IN 和 NOT IN用于刷选“在”和“不在”某一范围内的结果,如,要查找在部门3和部门4的人的姓名、年龄、电话,可以使用下面的方式:

4)通配符。关键字LIKE一般和通配符一起使用,通配符代表未知的字符。SQL中通配符是“ _”和“ %”,前者代表一个未指定的字符,后者代表不定个的未指定字符。如:仅仅知道电话的前四位,后两位未知,想获得相关信息,可以如下:值得注意的是,关键字和统配的相对位置。

又如:仅知道姓名的首字符为‘J’想查询相关信息,可以如下:

5)为了是查询的结果显得更为顺眼,我们可能需要对结果按某一列进行排序。关键字是ORDER BY,默认的情况下,ORDER BY的结果是升序的,使用关键字ASC和DESC可以指定升序和降序。如工资
的降序排列:

6)SQL的内置函数和计算。SQL有5个内置函数,如下:

其中,COUNT函数可以用于任何数据类型,SUM、AVG只能对数字类数据类型进行计算,MAX、MIN可用于数字、字符串和日期时间类型的计算。
如计算出salary的最大值、最小值,可以用:

其中,主要到两绿色椭圆的关系,通过关键词AS,MAX(salary)重命名为了max_salary。
7)在处理多个表时,子查询只有在结果来自一个表时才有用,若,需要显示两个表格或者多个表格的数据时,就要使用连接(join)操作。连接的基本思想是:把两个或多个表当做一个新的表格来操作。查询各员工所在部门的人数,其中员工的id和name来自employee表,people_num来自department表。如下:

另一种,连接语句的格式是JOIN ON语法,刚才的语句等价于:

MySQL之SELECT 语句详解的更多相关文章
- mysql基础篇 - SELECT 语句详解
基础篇 - SELECT 语句详解 SELECT语句详解 一.实验简介 SQL 中最常用的 SELECT 语句,用来在表中选取数据,本节实验中将通过一系列的动手操作详细学习 SELEC ...
- 第四节基础篇 - SELECT 语句详解
4.1 基本的SELECT语句 select * from T_WEATHER select cityname from t_weather 4.2 数学符号条件(>.<.>=.&l ...
- 基础select语句详解
在数据库操作语句中,使用最频繁,也被认为最重要的是 SELECT 查询语句.我们已经在不少地方用到了 SELECT * FROM table_name; 这条语句用于查看一张表中的所有内容. 而 SE ...
- MySQL8.0关系数据库基础教程(三)-select语句详解
1 查询指定字段 在 employee 表找出所有员工的姓名.性别和电子邮箱. SELECT 表示查询,随后列出需要返回的字段,字段间逗号分隔 FROM 表示要从哪个表中进行查询 分号为语句结束符 这 ...
- sql select语句详解
先group by 后 order by SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ] * | expression [ AS ...
- T-SQL_select语句详解
select语句执行的过程: 先看查询内容 ==>where条件 ==>[分组条件] ==>[分组搜索条件] ==>内容输出 ==>[是否排序] SQL中SELECT语句 ...
- 【转】MySQL用户管理及SQL语句详解
[转]MySQL用户管理及SQL语句详解 1.1 MySQL用户管理 1.1.1 用户的定义 用户名+主机域 mysql> select user,host,password from mysq ...
- 问题:oracle select into;结果:oracle SELECT INTO 和 INSERT INTO SELECT 两种表复制语句详解
oracle SELECT INTO 和 INSERT INTO SELECT 两种表复制语句详解 (2011-07-08 08:59:47) 转载▼ 标签: it 分类: oracle 我们经常会遇 ...
- Python中操作mysql的pymysql模块详解
Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...
随机推荐
- MySQL数据表操作(DDL)
一.创建数据表 语法:create table 表名称(字段 字段类型 [字段属性],字段 字段类型 [字段属性],...) [表选项]; 表选项:数据表的属性,一般包括engine.charset. ...
- jdk与tomcat的环境配置
一.JDK的安装与配置 1.从官网下载jdk,注意是jdk不是jre.最好从官网下载,也可以直接度娘. 2.下载完毕后,安装jdk,直接按照安装向导的提示安装即可,安装时可以自己选择安装路径,我的安 ...
- JZOJ 5934. 列队
Description Sylvia是一个热爱学习的女孩子. 在平时的练习中,他总是能考到std以上的成绩,前段时间,他参加了一场练习赛,众所周知,机房是一个 的方阵.这 ...
- ZooKeeper(1)-入门
一. Zookeeper工作机制 二.Zookeeper特点 三.Zookeeper数据结构 四.Zookeeper应用场景 统一命名服务 统一配置管理 统一集群管理 服务器动态上下线 软负载均衡
- Python基本图形绘制
turtle的一个画布空间最小单位是像素 turtle的绘制窗体:turtle.stup(width,heigth,startx,starty) 四个参数中后两个可选 turtle空间坐标体系:tur ...
- 使用source命令解决mysql导入乱码问题
设定编码格式:mysql -u root -p --default-character-set=utf8 use dbname source /root/newsdata.sql
- 【转】Linux系统安装Redis详细过程
本文来源 https://blog.csdn.net/qq_20989105/article/details/76390367 ,转载前请先联系原作者并声明出处. 一.安装gcc 1.Redis在li ...
- python2.7练习小例子(十四)
14):题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示. 程序分析:程序分析:(a>b)?a:b这 ...
- kudu是什么
Apache Kudu Overview 建议配合[Apache Kudo]审阅本文(http://kudu.apache.org/overview.html) 数据模式 Kudo是一个列式存储的用于 ...
- Bootstrap4用法
#Bootstrap4 ## 网格系统- .col- 针对所有设备- .col-sm- 平板 - 屏幕宽度等于或大于 576px- .col-md- 桌面显示器 - 屏幕宽度等于或大于 768px)- ...