
?哈罗,各位小伙伴大家好,又见面了,我还是那个不吃饱不干活的小尘,欢迎来到本期的SQL语言阶段性复习部分,让我们一起进入知识的海洋吧~?
一、数据库的相关概念
(1)数据库的好处
1、可以持久化数据到本地
数据库实际上就是借助于数据库管理系统,将我们的数据最终存储到磁盘上的文件。
2、结构化查询
因为是采取一套管理系统去管理,所以可以实现结构化查询。
(2)数据库的相关概念
1、DB
数据库。存储数据的容器(仓库)
2、DBMS
数据库管理系统。又称为数据库软件,或者数据库产品。用于创建或者管理DB。
3、SQL
结构化查询语言。与数据库通信的语言。不是某个数据库软件特有的,而是几乎所有的主流的数据库软件通用的语言。
(3)数据库存储数据的特点
1、数据存放到表中,表再存放到库中。
2、一个库中可以有多张表。每张表具备唯一的表名用来标识自己。
3、表中有一个或者多个列。又把列称为字段,相当于java中说的“属性”。
4、表中的每一行数据,就相当于java中的“对象”。
(4)常见数据库管理系统
?mysql、oracle、db2、sqlserver
详情请见:
第一章、MySQL数据库概述_m0_55746113的博客-CSDN博客 https://blog.csdn.net/m0_55746113/article/details/120539091?spm=1001.2014.3001.5501
二、mysql的介绍
(1)mysql的背景
前身属于瑞典的一家公司MySQL AB
08年被SUM公司收购
09年被Oracle收购
(2)mysql的优点
1、开源免费成本低
2、性能高、移植性好
3、体积小,便于安装
(3)mysql的安装
属于C/S架构的软件,既有服务端也有客户端。
一般来讲,安装服务端。
1、路径非中文
2、企业版、社区版
3、现在咱们安的是 5.5?
(4)mysql服务的启动和停止
方式一、
通过命令行:net start 服务名
? ? ? ? ? ? ? ? ? ? ?net stop 服务名
方式二、
计算机右击--->管理--->服务
(5)mysql服务的登录和退出
登录:
mysql -h主机名 -P 端口号 -u 用户名 -p密码
如: mysql? -h localhost -P 3306 -u root -p ******
若连接本机,且端口号3306,可这样写:
mysql -u 用户名 -p密码
退出:
exit 或者 ctrl+C
详情请见:
第二章、MySQL数据库的介绍(包括安装与删除)超详细!!!_m0_55746113的博客-CSDN博客 https://blog.csdn.net/m0_55746113/article/details/120539393?spm=1001.2014.3001.5501以及:
第三章、 MySQL的使用_m0_55746113的博客-CSDN博客 https://blog.csdn.net/m0_55746113/article/details/120584111?spm=1001.2014.3001.5501
三、DQL语言之基础查询
(1)语法
SELECT? ?查询列表? ?
FROM? ?对应表名;
(2)特点
1、查询列表可以是字段、常量、表达式、函数,也可以是多段的组合。
2、查询结果是一个虚拟的表。
(3)示例
1、查询单个字段
SELECT
? ? ? ? 字段名
FROM
? ? ? ? 表名;
2、查询多个字段
SELECT
? ? ? ? 字段名,
? ? ? ? 字段名
FROM
? ? ? ? 表名;
3、查询所有字段
SELECT
? ? ? ? *
FROM
? ? ? ? 表名;
4、查询常量
SELECT
? ? ? ? 常量值;
注意:字符型和日期型的常量值必须用单引号,数值型不需要。
5、查询函数
SELECT
? ? ? ? 函数名(实参列表);
注:不能把select去掉直接加函数名和实参列表!
? ? ? ?MySQL函数的调用方法,必须要加上SELECT,而且MySQL里面的函数必须有返回值!
? ? ? ?相当于执行了该函数的函数体,并同时查询出对应的返回值。
6、查询表达式
SELECT
? ? ? ? 100/12;
注:支持算术运算( + - * / % ),但不支持++,--,*=? 之类。
7、起别名
<1>? as
提高可读性
<2>空格
比较简单
8、去重
SELECT
? ? ? ? DISTINCT? 字段
FROM
? ? ? ? 表名;
注:字段不可以有几个!!!
这样是不对的:select distinct a,b from 表名;
这样也是不对的:select distinct a,distinct b from 表名;
9、加号
作用:做加法运算
<1>select 数值+数值;? ? --->? ?直接运算
<2>select 字符+数值? ? ?--->? ?先试图将字符转换成数值。若转换成功,则继续运算,否则转换成0再做运算。
<3>select null+数值? ? ? --->? ?结果都为NULL
10、concat函数
功能:拼接字符
select concat (字符1,字符2,字符3,……);
注:若不是字符,比如数值型,会自动转换为字符型,再做拼接。
11、IFNULL函数
判断某字段或表达式是否为NULL,如果为NULL则返回指定的值,否则返回原本的值。
比如:
select? IFNULL(commission_pct,0) from employees;
若commission)_pct的值为NULL,则返回0。

12、ISNULL函数
判断某字段/表达式/函数是否为NULL,如果是,则返回1,否则返回0。
ISNULL函数里面只有一个参数,即有可能为NULL的字段。
如果值为NULL,就返回1(true);否则返回0(false)。
比如:
select ISNULL(commission_pct) from empoyees;

详情请见:
第五章、SQL 语言学习(基础篇)_m0_55746113的博客-CSDN博客 https://blog.csdn.net/m0_55746113/article/details/120601271?spm=1001.2014.3001.5501
第五章、SQL语言学习(基础查询之别名、去重和加号的使用)细节篇!!!_m0_55746113的博客-CSDN博客 https://blog.csdn.net/m0_55746113/article/details/120609146?spm=1001.2014.3001.5501
四、DQL语言之条件查询
(1)语法
SELECT
? ? ? ? 查询列表
FROM?
? ? ? ? 表名
WHERE
? ? ? ? 筛选条件
注:筛选条件的最终结果是true或者false。
? ? ? ?如果条件成立,则会显示在结果集中。
? ? ? ?如果条件不成立,则数据不显示,被过滤掉了。
执行顺序:
FROM 表名--->WHERE? 筛选条件--->SELECT 查询列表
(2)分类
1、简单条件运算符
>? ? <? ? =? ? <>? ?>=? ? <=? ? !=? ? <=>
2、逻辑运算符
&&? ? ? and? ?
||? ? ? ? ?or
!? ? ? ? ?not
3、模糊查询
like? :一般搭配通配符使用,用于判断字符型数值(也可判断数值型)
我们可以试一下是否可以判断数值型:
先看一下部门编号department_id的数据:

?都是整型的,我现在想查询出部门编号是一百多的,咱们不用运算符。
怎么查呢?
SELECT
*
FROM
employees
WHERE
department_id LIKE '1__';
执行结果:
说明可以判断数值型的。

?通配符:
%? :任意多个字符。
_? ? : 任意单个字符。
between? and
in
is null / is not null:用于判断NULL值
?
IS NULL 与安全等于<=>
| ? ?普通类型数值? | ?null值? | ?? ? ? ? 可读性 | | IS NULL | ? ? ? ? ? ? × | ? ? ?√ | ? ? ? ? ? ? ? √ | | < = > | ? ? ? ? ? ? ?√ | ? ? ?√ | ? ? ? ? ? ? ? ×?? |
详情:
第六章、SQL语言学习(条件查询) 超硬核!!!_m0_55746113的博客-CSDN博客 https://blog.csdn.net/m0_55746113/article/details/120614516?spm=1001.2014.3001.5501
好啦,这次的阶段性回顾就到这儿了,咱们下次不见不散~
原创不易,请多多支持!

?
|