数据库学习笔记(6)——SQL中的函数以及如何通过workbench的逆向工程生成ER实体图

1、select语句说明:

  • select就是在展示结果后面可以不用跟from

2、数学函数:

-- 数学函数
use db_exercise1;
select abs(-100) 绝对值,
floor(29.8) 向下取整,
ceil(30.1) 向上取整,
round(29.3134) 四舍五入,
round(29.545,2) 四舍五入保留两位小数,
pow(2,4) 幂数,
rand() `0-1之间的随机数`,
pi() 圆周率,
greatest(1,2,3,4,6,7,8) 多个数据中的最大值,
least(1,2,3,4,5,88) 多个数据中的最小值;

在这里插入图片描述


3、字符串函数:

-- 求字符串长度
insert into student value('09','kbba','2000-02-09','女');
select sname,char_length(sname) 字符串长度 from student;
select * from student where char_length(sname)=4;

在这里插入图片描述

-- 获取左边指定长度的字符
select sname,left(sname,1) 获取左边指定长度的字符 from student;

在这里插入图片描述

-- 获取右边指定长度的字符
select sname,right(sname,1) 获取左边指定长度的字符 from student;
-- 判断字符串中是否包含指定内容【包含就显示包含的第一个字母所在位置(从1开始),不包含就显示0】
select instr('asdvadsf','asd'),
instr('asdvadsf','dv'),
instr('asdvadsf','f'),
instr('asdvadsf','adv');

在这里插入图片描述

-- 字符串拼接
select concat(sid,sname,ssex) 无连接符字符串拼接 from student;
select concat_ws('+',sid,sname,ssex) 有连接符的字符串拼接 from student;
-- 字符串替换 select replace(字符串,旧字串,新子串); 
select replace('abcdefg','cd','--');
-- 因为MySQL中没法统计某个字符出现的次数,
-- 所以可以用替换的方法先将某个需要统计的字符替换为空字符,然后用旧字符串长度减新字符串长度,就能算出有多少字符。

在这里插入图片描述

-- 移除字符串两端的内容 select trim(字串 from 字符串);
select trim('*' from '***aaa***') 清除两端的,
trim(leading '*' from '***aaa***') 清除前面的,
trim(trailing '*' from '***aaa***') 清除后面的;

在这里插入图片描述

-- 字符比较 数据在MySQL 忽略大小写
-- 前者大于后者 结果为1 等于结果为0 小于结果为-1
select strcmp('a','A'),
strcmp('abc','a'),
strcmp('a','sdf');

在这里插入图片描述

-- 提取字串
-- select substr(字符串,提取的起始位置【从1开始】,长度)
-- 不设置长度就会从提取的起始位置一直选到结尾
select substr('abcdefgh',2,3),
substr('abcdefgh',2);

在这里插入图片描述


4、时间函数:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


5、用mySQLworkbench生成ER实体图:

  • ER实体图说明:如下图,方块表示实体,椭圆表示属性,菱形表示两者之间的关系。
    在这里插入图片描述
  • 方法:在数据库的逆向工程中执行下一步直到生成为止
    在这里插入图片描述
    在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值