MySQL
紫金小飞侠
这个作者很懒,什么都没留下…
展开
-
sql面试题
sql原创 2023-03-11 11:00:39 · 420 阅读 · 0 评论 -
mysql时间格式和Java时间格式对应
mysql时间格式和Java时间格式对应原创 2022-07-14 11:42:11 · 4898 阅读 · 0 评论 -
基于数据库实现的分布式锁
基于数据库实现的分布式锁转载 2022-07-13 11:23:44 · 396 阅读 · 0 评论 -
字符串切割 group by
sql原创 2022-06-07 11:06:05 · 725 阅读 · 1 评论 -
sql distinct多个字段
distinct注意:1、DISTINCT需要放到所有列名的前面,否则会报错2、DISTINCT其实是对后面所有列名的组合进行去重。SELECT DISTINCT attack_range FROM herosSELECT DISTINCT attack_range, name FROM heros原创 2021-12-21 11:57:53 · 17723 阅读 · 0 评论 -
sql count(列名)、count(常量)、count(*)之间的区别
COUNT(列名)、COUNT(常量)和COUNT(*)之间的区别COUNT()和COUNT(1) :在InnoDB中COUNT()和COUNT(1)实现上没有区别,而且效率一样,统计结果中,会包含值为NULL的行数COUNT(字段): 需要进行字段的非NULL判断,所以效率会低一些。因为COUNT()是SQL92定义的标准统计行数的语法,并且效率高,所以没有某个字段不为null 的统计行数需求请直接使用COUNT()查询表的行数!COUNT(id)和COUNT()以外,还可以使用COUNT(常量)原创 2021-12-20 10:59:01 · 2200 阅读 · 0 评论 -
sql count和sum的区别
count:统计行数,是做表中符合过滤结果的行数累加,和每行中的具体数字无关COUNT(*)的目的只是为了统计总行数,所以,他根本不关心自己查到的具体值sum:每行的数值累加,,是做表中符合过滤结果的每行中某列的数值累加和,和每行中的具体数值有关...原创 2021-12-20 10:32:21 · 291 阅读 · 0 评论 -
sql窗口函数
sql离线分析的窗口和实时的窗口是有区别的,实时的窗口函数主要是按时间窗口做聚合,离线的窗口函数主要是排序sql 窗口函数聚合窗口函数:离线的聚合函数是计算出来在原有的每行添加上聚合之后的结果列,所以如果想回去分组后每一组的聚合结果需要 用gruop by 后在select 后面用sum() 求和。selectdomain, time, traffic,sum(traffic) over(partition by domain order by time) pv1,sum(traffic)原创 2021-12-20 10:12:15 · 140 阅读 · 0 评论 -
mysql 根据时间字段查去重
例子1:比如说有4条数据是2014—8— 24 2014—8— 082014—9— 24 2014—9— 08SELECT distinct date_format(create_time,'%Y-%m') from table1;结果:2014—82014—9例子2时间字段数据时间格式转换select date_format(gmt_create,'%Y-%m-%d') time from table1 where gmt_create between '2021-01原创 2021-12-18 19:42:39 · 1923 阅读 · 0 评论 -
sql between取时间范围
我的表某个字段是Datetime型 以" YYYY-MM-DD 00:00:00" 存放如A 2009-01-22 21:22:22B 2009-01-22 19:21:11C 2009-01-22 23:10:22时间范围查找现在想从table1查找’2021-01-12’ 到 ‘2021-01-25’ 的数据,要求包含12日全天和26日全天的数据,现在用select id, gmt_create from table1 where gmt_create between '2021-01原创 2021-12-18 17:56:24 · 19184 阅读 · 0 评论 -
spring 事务传播机制
spring 事务传播机制总结REQUIREDPROPAGATION_REQUIRED / REQUIRED (spring默认事务传播机制)支持当前事务,如果当前没有事务,则新建事务如果当前存在事务,则加入当前事务,合并成一个事务如果上下文中已经存在事务,那么就加入到事务中执行,如果当前上下文中不存在事务,则新建事务执行。所以这个级别通常能满足处理大多数的业务场景。事务传播原则:子事务回滚,父事务一定回滚父事务回滚,子事务一定回滚public class ServiceA {转载 2021-10-12 09:27:42 · 156 阅读 · 0 评论 -
SQL示例
分组后求 每组内的top n思路: 生成含有排序字段的临时表,再从这个临时表中求top nselect * from user1;select t_user1.addr,t_user1.age,t_user1.nfrom(增加了排序字段(n)的临时表 ) where t_user1.n<=2 ## 根据添加的排序字段(n)取top n;生产添加了排序字段(n)的临时表具体实现:select t_user1.addr,t_user1.age,t_user1.nfrom原创 2021-08-12 17:04:52 · 85 阅读 · 0 评论 -
常用sql
SELECT语句分组1. 分组后,再对组做筛选(GROUP BY+HAVING )根据addr分组,求组内salary的平均值,过滤掉不满足salary的平均值>=4000的组-- 要求平均薪水>=40000SELECT addr,GROUP_CONCAT(username) AS usersDetail,COUNT(*) AS totalUsers,SUM(salary) AS sum_salary,MAX(salary) AS max_salary,MIN(salary原创 2021-06-09 17:36:33 · 237 阅读 · 1 评论 -
SQL HAVING 子句
SQL HAVING 子句转载 2021-06-09 16:45:03 · 90 阅读 · 0 评论 -
mysql无法使用分组查询 SELECT list is not in GROUP BY clause and contains nonaggregated column
mysql 8set @@global.sql_mode ="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION";参考原创 2021-06-09 15:27:56 · 170 阅读 · 0 评论 -
varchar与char有什么区别?
varchar与char有什么区别转载 2021-06-08 19:47:17 · 104 阅读 · 0 评论 -
更改MySQL数据库的编码为utf8mb4
utf-8编码可能1个字节、2个字节、3个字节、4个字节的字符,但是MySQL的utf8编码只支持最多3字节的数据,也就是说mysql最开始的时候,对utf-8的支持是不完整的。而emoji表情字符是4个字节的字符。如果直接往采用utf-8编码的数据库中插入表情数据,java程序中将报SQL异常**为了支持完整的utf-8编码,mysql推出了utf8mb4,**它是mysql平台上utf8编码的超集,兼容utf8,并且能存储4字节的表情字符。采用utf8mb4编码的好处是:存储与获取数据的时候,不用再转载 2021-02-23 11:18:42 · 157 阅读 · 0 评论 -
MySQL大小写敏感
MySQL大小写敏感的解决方案注:①关于lower_case_table_names参数对表名称或数据库名称大小写敏感的控制。②Unix下默认为0,也就是大小写敏感的;Windows下默认为1,不敏感;macOS默认为2,存储区分大小写,但是在查询时会转换为小写。③对于在大小写不敏感的系统(Windows和macOS)不能将该字段设置为0。①linux默认情况下,对数据库名和表名的大小写是敏感的,因为linux系统本身对大小写就敏感。②字段内容大小写不敏感。③列名大小写不敏感。只要在创建表原创 2020-08-24 15:39:09 · 218 阅读 · 0 评论 -
mysql导出sql格式数据再使用sql命令插入
打开导出的sql文件,其实就是插入数据的sql命令刷新可以看到数据被插入原创 2020-05-18 16:14:04 · 171 阅读 · 0 评论 -
自增长id/UUID/雪花算法
/雪花算法自增长id/UUID雪花算法的原理和实现SnowFlake算法(雪花算法)的优点:(1)高性能高可用:生成时不依赖于数据库,完全在内存中生成。(2)容量大:每秒中能生成数百万的自增ID。(3)ID自增:存入数据库中,索引效率高。SnowFlake算法的缺点:依赖与系统时间的一致性,如果系统时间被回调,或者改变,可能会造成id冲突或者重复。...原创 2020-05-09 19:22:28 · 4405 阅读 · 0 评论 -
数据库——数据字典
数据库——数据字典是什么?一.数据字典以及使用场景:User表,User主体有很多属性,比如证件(身份证、居住证、港澳通行证…)地区(河北、河南、北京…)等,然后表建好了,数据也填进去了,项目代码也敲几万行。但是有一天,客户说这个“身份证”表述不够官方,要改成“居民身份证”比较好,所以作为这个项目开发人员,你要把代码里和数据库中所有的“身份证”改成“居民身份证”,这工作量估计很让人抓狂。但...转载 2020-04-22 17:50:26 · 1770 阅读 · 0 评论 -
Centos7 安装和配置MySQL5.7
Centos7 安装和配置MySQL5.7转载 2020-04-17 23:05:20 · 119 阅读 · 0 评论 -
MySQL基础之常用函数
MySQL基础之常用函数第1章 函数操作1-1 数学函数的使用1-5 字符串常用函数-- 测试字符串函数-- CHAR_LENGTH():得到字符串的字符数SELECT CHAR_LENGTH('abc');-- LENGTH():返回字符串的长度SELECT LENGTH('abc');-- CONCAT(s1,s2,....):将字符串合并成一个字符串SELECT ...原创 2020-02-08 22:02:15 · 100 阅读 · 0 评论 -
MySQL基础之数据类型
MySQL基础之数据类型第1章 数据库简介1-1 MySQL数据库简介1-3 数据库相关术语1-4 MySQL的登陆退出及常用命令1-6 创建和管理数据库常用操作# 注释内容-- 注释内容-- 创建数据库 kingCREATE DATABASE king;-- 查看当前服务器下有哪些数据库SHOW DATABASES;SHOW SCHEMAS;-- 查看ki...原创 2020-02-06 13:28:10 · 218 阅读 · 0 评论 -
在sql语句中,like所有的用法
在sql结构化查询语言中,like语句有着至关重要的作用。like语句的语法格式是:select*from表名where字段名 like 对应值(子串),它主要是针对字符型字段的,它的作用是在一个字符型字段列中检索包含对应子串的。A:% 包含零个或多个字符的任意字符串:1、like'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden)。2、like...转载 2019-12-31 10:46:59 · 19162 阅读 · 1 评论 -
QT 中使用MySQL
QT 中使用MySQL删掉“CONFIG -= qt”运行提示错误:QSqlDatabase: QMYSQL driver not loaded是因为QT中没有包含libmysql.dll动态链接库,需要下载放入QT安装路径的bin文件中下载地址:https://downloads.mysql.com/archives/c-c/...原创 2019-12-26 21:06:28 · 374 阅读 · 0 评论 -
MysSQL下载与安装 win10+Linux
目录MysSQL下载与安装 win10+Linux问0win10下载与安装修改数据库登录密码数据库可视化软件Linux下安装MySQLMysSQL下载与安装 win10+Linux问0win10下载与安装下载地址:https://www.mysql.com/downloads/百度网盘下载地址:https://pan.baidu.com/s/1zfwD...原创 2019-12-26 21:04:49 · 789 阅读 · 0 评论