![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
m5776775
这个作者很懒,什么都没留下…
展开
-
开窗函数有无partit by,oder by的区别
开窗函数有无partit by,oder by的区别这里是引用:为了方便自己查看,图片和代码引用博主tang_xuming,如有冒犯,联系删除1.partition by和order by同时存在,按照排序连续累加,相同排名的需要将相同排名对应的数值都相加作为相加后的结果,然后继续累加;select prov_name, city_name, val_cnt, sum(val_cnt) over(partition by prov_name ORDER BY val_cnt) AS r转载 2022-04-22 16:25:52 · 1624 阅读 · 1 评论 -
nvl函数
nvl函数用法介绍来源百度,记录使用NVL函数的功能是实现空值的转换,根据第一个表达式的值是否为空值来返回响应的列名或表达式,主要用于对数据列上的空值进行处理,语法格式如:NVL( string1, replace_with)。NVL(E1, E2)的功能为:如果E1为NULL,则函数返回E2,否则返回E1本身。但此函数有一定局限,所以就有了NVL2函数。拓展:NVL2函数:Oracle/PLSQL中的一个函数,Oracle在NVL函数的功能上扩展,提供了NVL2函数。NVL2(E1, E2, E3转载 2021-12-08 16:28:55 · 227 阅读 · 0 评论 -
self outer join 自我外联
如果数据库中的员工表,有员工的基本信息,以及所负责他们的leader姓名列如果leader姓名列为空,就意味该员工为leader如果想查询员工表中员工的id,name,和leader,并且在表中员工姓名列和领导姓名列都为name员工id列为uid,领导id列为emp_id,一个emp_id可对应多个uid,即一个领导可负责多个人即使无leader的员工信息也要现实出来,这时就需要自我外联select u.uid, u.name, m.name as leaderfrom user原创 2020-07-10 12:51:24 · 182 阅读 · 0 评论 -
SQL正则表达式
sql正则表达式REGEXP 正则表达式缩写例子:1、查询名字包含 ‘天’ 字的人的信息select *from userwhere user_name like '%天%'等同于select *from userwhere user_name regexp '天'2、查询user表中,姓名最后一个字是 ‘宇’ 的人的信息select * from userwhere user_name like '%宇'等同于select * from userwh原创 2020-06-19 18:30:53 · 833 阅读 · 0 评论 -
SQL操作符UNION和UNION ALL(合并两个或多个 SELECT 语句的结果集)
UNION 、UNION ALL操作符用于合并两个或多个 SELECT 语句的结果集。从这个角度来看,它们跟 JOIN 有些类似,都可以从多个表中获取信息。注意的是:UNION 、UNION ALL内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。下面是设计的两张表:STUDENTONE_MESSAGE表ST...转载 2019-12-25 10:04:14 · 991 阅读 · 0 评论 -
with rollup的用法
Mysql中有一个with rollup是用来在分组统计数据的基础上再进行统计汇总,即用来得到group by的汇总信息;表中数据有:没有with rollup的查询select count(*),age from age group by age;结果:有with rollup的查询语句:select count(*),age from age group by age wit...原创 2019-12-24 18:14:55 · 22389 阅读 · 0 评论 -
mysql中的where和having的区别
下面以一个例子来具体的讲解:where和having都可以使用的场景select age,name from user where age> 18select age,name from user having addtime> 18解释:上面的having可以用的前提是我已经筛选出了age字段,在这种情况下和where的效果是等效的,如果我没有select age就会...原创 2019-12-17 10:25:06 · 126 阅读 · 0 评论 -
inner join、right join、left join 之间的区别
sql的left join 、right join 、inner join之间的区别left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 inner join(等值连接) 只返回两个表中联结字段相等的行举例如下:表A记录如下:表B记录如下:1.left join...原创 2019-12-16 14:53:21 · 126 阅读 · 0 评论 -
SQL中的limit用法
limit用法SQL中的limit函数是用来对数据库中的字段进行限制提取的,如:一个用户表中有许多的用户信息,如果想要取出其中某个位置的某几条数据,就可以使用limit函数。结构limit函数结构为:limit m , n,表示从第m+1条数据取出n条数据。例子查找入职员工时间排名倒数第三的员工所有信息select * from `user`where date = (select ...原创 2019-12-05 16:25:59 · 9238 阅读 · 0 评论 -
SQL中的CONCAT、ROUND函数作用
CONCAT函数:CONCAT函数的作用是将字符串连接起来,例如user表中有name和age字段,想要将二者连起来输出nameage张三13语句:SELECT CONCAT(name,age) FROM user`结果:ROUND函数:ROUND函数是在保留小数的时候来使用,并且遵循四舍五入的原则,格式为ROUND(小数数字,保留位数),如:S...原创 2019-12-04 16:11:17 · 2238 阅读 · 0 评论 -
ALTER TABLE下新增和修改字段
数据库操作语句1. 修改字段类型修改数据库字段类型:ALTER TABLE user(表名)modifyname(字段名) varchar(20)//将user表的name字段改为字符串类型2. 添加字段数据库表中添加字段:ALTER TABLE user ADD date varchar(20) NOT NULL AFTER datetime//在表user中的datetime字...原创 2019-12-04 15:33:39 · 2827 阅读 · 0 评论