MySQL数据库技术(二)

MySQL数据库技术(1+X)

定义表的时候,需要确定每个字段的数据类型。MySQL 支持多种数据类型,

大致可以分为三类:数值类型、日期/时间类型和字符串类型

数值类型

数值类型包括 5 种整数2 种浮点数1 种定点数,如下表所示。

日期/时间类型

日期/时间类型如下表所示:

字符串类型

字符串类型如下表所示:

启动数据库:

sql 复制代码
sudo service mysql start

进入数据库:

sql 复制代码
mysql -u root -p

使用 source 命令导入数据库:

sql 复制代码
source /home/project/world.sql

select 的基本语法如下:

sql 复制代码
select 列名 from 表名;

如果需要从表中选取多个列,列名之间用逗号分隔。

sql 复制代码
select 列名1,列名2,......,列名n from 表名;

DISTINCT关键字,它的作用是消除重复的行

sql 复制代码
select DISTINCT 列名 from 表名;
sql 复制代码
select 列名 from 表名 where 列名 运算符 条件值;

select * from city where CountryCode = 'PSE';

1、不等于

select * from city where id!=1;

分页查询
sql 复制代码
select 列名 from 表名 limit 起始行行号,每页显示的行数

例如:查询 city 表中的记录,从第 6 行开始,显示 5 行记录。

sql 复制代码
select * from city limit 5,5;

行号是从 0 开始,因此 limit 的第一个参数是 5。 limit 后也可以只跟一个参数,表示需要返回的行数,此时从第一行开始获取数据。

例如:显示 city 表中的前 5 行记录

select * from city limit 5;

ORDER BY 语法
sql 复制代码
select 列名 from 表名 order by 列名

非数值类型的字段的排序是按字典序。

desc 即可实现降序排列。asc 表示升序

例如:按人口数量进行降序排序,只取前 5 条记录

sql 复制代码
select * from city order by population desc limit 5;

注意:是先排序再取前 5 条,而不是把前 5 条拿去做降序排序后输出。

GROUP BY 语法

sql 复制代码
select 列名 from city [where 条件] group by 列名;

where 条件在这里不是必须的。

HAVING 语法
sql 复制代码
select 列名 from city group by 列名 having 分组条件;
GROUP BY 与 HAVING 的作用

在 MySQL 数据库中 group by 是和聚合函数一起使用的,通过把一个或多个列分成多个组,然后使用聚合函数进行分组统计。

having 的作用就是分组后再对组设置查询条件,过滤掉不符合条件的组。

在数据库中,函数通常分为单行函数与多行函数两类,如下图所示:

单行函数:将每一条记录作为输入值进行计算,得到每条记录对应的结果。如:字符串函数、数值函数、日期时间函数等。

多行函数:将多条记录作为输入值进行计算,得到单个结果。如:最大值函数、求和函数、统计函数等。

字符串函数
数值函数

数值函数用来处理数值方面的运算,能够提高用户的工作效率。常用的数值函数如下表所示,函数括号内为输入的参数。

日期时间函数
转换函数

日期 使用 DATE_FORMAT 函数,对字符串 使用 STR_TO_DATE 函数、CAST 函数、**CONVERT**函数。

对日期使用 DATE_FORMAT()函数
对字符串使用 STR_TO_DATE() 函数

把字符串转换为日期时间需要注意以下几点:

  • 待转换字符串中只能出现数字,否则返回结果为 null;
  • 如果格式字符串仅包含日期,则待转字符串至少需要 8 位数字,转换时默认前四位是年份,中间两位是月份,最后两位是日期,格式字符串无需使用 - 区分日期各部分,结果会自动用 - 拼接日期各个部分;
  • 转换后日期时间必须有效,否则返回结果为 null;
  • 如果被转字符串超出 8 位且格式字符串中无时间格式,则自动取前 8 位转换为日期;
  • 格式字符串可包含时间格式,格式字符串无需使用 : 区分时间各部分,结果中的时间部分会自动用 : 连接各个部分。
CAST 函数与 CONVERT 函数
条件判断函数
系统信息函数
加密函数
格式化函数

【1+X】MySQL 数据库技术 - 蓝桥云课

相关推荐
睡不醒男孩0308231 小时前
第七篇:揭秘 PostgreSQL 数据库内核级管控:CLup 深度架构设计与高可用底座技术白皮书
数据库·postgresql·clup
cmes_love1 小时前
Level 2逐笔成交历史数据下载方法笔记
数据库·笔记·oracle
swordbob2 小时前
MySQL字符集陷阱:从Oracle迁移踩坑到utf8mb4强制规范
数据库·sql
牛油果子哥q2 小时前
【C++ STL string 】C++ STL string 终极精讲:底层原理、内存机制、全套API、深浅拷贝、易错坑点与工程实战规范
数据库·c++
十五年专注C++开发2 小时前
MySql中各种功能用sql语句实现总结
数据库·sql·mysql
数据库小学妹2 小时前
AI时代数据库怎么选?多模融合、数据统一存储与选型实战指南
数据库·人工智能·经验分享·ai
Albert Edison3 小时前
【Redis】Centos7.9 安装 Redis 5 教程
数据库·redis·缓存
云计算磊哥@3 小时前
运维开发宝典026-MySQL02数据库表操作
运维·数据库·运维开发
小二·3 小时前
Redis 内存溢出(OOM)排查与恢复实战
数据库·redis·bootstrap
pqk6V6Vep3 小时前
Redis 分布式锁进阶第一篇讲解
数据库·redis·分布式