![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
心语豫园
这个作者很懒,什么都没留下…
展开
-
mysql统计一天产生多少条记录
sql语句如下:SELECT date(reserve_begin_time),count(1) from brother_reserve group by date(reserve_begin_time) ORDER BY reserve_begin_time desc统计结果如下:原创 2020-08-18 17:47:24 · 687 阅读 · 0 评论 -
mybatis中$和#注入的区别
#会进行预编译以?的形式拼接在sql中:$会直接拼接在sql中如下:SELECT * FROM xtech_brother_graph_log WHERE action_biz_code = 'teachers_day' and del_flag = "n" and action_type = ? group by target_work_no order by gmt_create desc原创 2020-08-18 11:25:34 · 249 阅读 · 0 评论 -
mysql查询某个字段重复出现的次数
这是数据库中的表:分组介绍:select dname,count(1) from dept group by dname having count(1) > 1Select 重复字段 From 表 Group By 重复字段 Having Count(*)>1原创 2020-08-17 10:28:43 · 4050 阅读 · 0 评论 -
mysql 的 order by 方法根据不同状态,进行相应排序规则的实现
当前遇到一项目的活动排序需求是:活动列表,排序要做如下修改:1、首先根据活动状态排序;进行中 => 未开始 => 已结束来排2、已经结束的活动,要按“开始时间”的倒序来排3、进行中,未开始的活动,要按“开始时间”的顺序来排因为在开始是设计的活动状态序号是:1、未开始,2、进行中,3、已结束,因此导致排序稍微变的复杂以下是我详细的排序实现:select *from actorder by case when status=2 then 0 ELSE 4 END, //转载 2020-08-17 09:41:30 · 1563 阅读 · 0 评论 -
MySQL自定义排序
需求有些时候我们排序不是单纯的按照升序或者降序,而是按照如 id 以 6, 2, 5, 1的顺序排序,该如何实现呢?解决版本初始化表create table t(id int primary key, status int);insert into t values(1,1);insert into t values(2,2);insert into t values(3,3);insert into t values(4,4);insert into t values(5,5);ins转载 2020-08-14 17:33:37 · 141 阅读 · 0 评论 -
对用户分数排名
排名的sql:select a.Score as Score,(select count(distinct b.Score) from Scores b where b.Score >= a.Score) as Rankfrom Scores aorder by a.Score DESC效果图:原创 2020-08-12 16:56:24 · 111 阅读 · 0 评论 -
mysql进行数据库字段拼接
sql如下:SELECT CONCAT_WS('|',customerCode,customerName) cu from TwmCustomerRecords查询出来的效果如下:原创 2020-05-29 15:56:29 · 534 阅读 · 0 评论 -
分组统计用户数
<select id="countUser" parameterType="tf56.teamwork.query.TwmCountUserQuery" resultType="tf56.teamwork.query.TwmCustomerOperationLogsCount"> Select inputManName,count(*) count from TwmCustomer...原创 2020-03-23 14:57:56 · 274 阅读 · 0 评论 -
SQL获取最近状态变更时间的记录
获取最近状态变更时间的记录:<select id="getTwmClewLogs" parameterType="tf56.teamwork.domain.TwmCustomerOperationLogs" resultMap="twmcustomeroperationlogsFieldMap"> Select changeStautusTime,operationContent...原创 2019-12-31 15:45:37 · 732 阅读 · 0 评论 -
对数据记录进行统计
统计线索的个数 <!-- 统计查询 --> <select id="countTwmClew" parameterType="tf56.teamwork.query.TwmcClewCountQuery" resultType="java.lang.Integer"> SELECT count(clewId) as twmClew FROM TwmClew ...原创 2019-12-30 11:24:55 · 363 阅读 · 1 评论 -
$和#为什么$会发生sql注入?
“#” 将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号“$” 将传入的数据直接显示生成在sql中MyBatis排序时使用order by动态参数时需要注意,用 ${} 而不是 ##{ } 用于CRUD${ } 则用于模糊查询(记得加%%)DB执行一条SQL语句的时候,默认的方式是根据搜索条件进行全表扫描,遇到匹配条件的就加入搜索集合。如果对某一字段添...原创 2019-12-25 13:43:31 · 1221 阅读 · 0 评论 -
DAO层添加数据成功返回主键ID
返回结果mapper文件需配置这样主键ID才会返回原创 2019-11-18 16:29:27 · 1002 阅读 · 0 评论 -
Mysql 语句执行顺序
select[distinct] from join(如left join) on where group by having union order by limit mysql语句执行顺序按照上述执行原创 2019-11-08 14:37:54 · 216 阅读 · 0 评论 -
mysql 数据库查询, 在一张表里按时间排序然后按主键排序的写法
倒序的写法:select * from TwmCustomerOperationLogs order by inputDate DESC,customerOperationId DESC;升序的写法:select * from TwmCustomerOperationLogs order by inputDate ASC,customerOperationId ASC;...原创 2019-11-08 14:35:55 · 1167 阅读 · 0 评论 -
MySQL事务底层实现原理
事务特性事务特性分为:原子性 每一个事务都是不可分割的整体,要么全部成功要么全部失败;一致性 事务执行后的结果是和预设的规则完全符合的,不会因为出现系统意外等原因和预测的结果不一致;隔离性 事务与事务之间是相互独立的,互不影响;也是在事务并发时实现一致性的一个前提,可以设置4种隔离级别。级别越高一致性越强,但并发性越低;1.读未提交 会读到其他事务未提交的数据,产生脏读2.读已提交 解...原创 2019-10-23 16:38:44 · 4906 阅读 · 1 评论 -
MySQL锁的介绍
1 什么是锁1.1 锁的概述在生活中锁的例子多的不能再多了,从古老的简单的门锁,到密码锁,再到现在的指纹解锁,人脸识别锁,这都是锁的鲜明的例子,所以,我们理解锁应该是非常简单的。再到MySQL中的锁,对于MySQL来说,锁是一个很重要的特性,数据库的锁是为了支持对共享资源进行并发访问,提供数据的完整性和一致性,这样才能保证在高并发的情况下,访问数据库的时候,数据不会出现问题。1.2 锁的两...原创 2019-10-22 11:22:03 · 564 阅读 · 0 评论 -
默认不查车辆状态mapper文件的写法
车辆列表默认不查4和5的状态<choose> <when test="vehicleStatus !=null and vehicleStatus != ''"> AND vehicle_status = #{vehicleStatus,jdbcType=VARCHAR} </when> ...原创 2019-10-22 11:07:03 · 105 阅读 · 0 评论 -
Truncate Table 用法
删除表中的所有行,而不记录单个行删除操作。语法TRUNCATE TABLE name参数name是要截断的表的名称或要删除其全部行的表的名称。注释TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。DELETE 语句每次删除一行,并...原创 2019-10-21 11:27:36 · 948 阅读 · 0 评论 -
InnoDB 引擎主键选择以及索引的优缺点
InnoDB 引擎主键选择以及索引的优缺点在 InnoDB 中,每张表都有个主键(Primary Key),如果在建表时没有显式地定义主键,则 InnoDB 引擎会按照如下方式选择或创建主键:首先判断表中是否有非空的唯一索引(Unique NOT NULL),若有,则该列即为主键(当表中有多个非空唯一索引时,InnoDB 存储引擎将选择建表时第一个定义的非空唯一索引为主键);若不符合...原创 2019-09-29 11:12:00 · 625 阅读 · 0 评论 -
count(1) and count(*)的性能分析
count(1) and count(*)的性能分析count(1) and count(*)当表的数据量大些时,对表作分析之后,使用count(1)还要比使用count(*)用时多了!从执行计划来看,count(1)和count()的效果是一样的。但是在表做过分析之后,count(1)会比count()的用时少些(1w以内数据量),不过差不了多少。如果count(1)是聚索引,id,...原创 2019-09-28 20:17:25 · 561 阅读 · 4 评论 -
SQL语句优化
SQL语句优化在SQL的查询过程,有时候为了提高查询效率,我们时常会对SQL语句进行优化,下面就给大家分享一下SQL优化方法:1、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引,但是不宜创建过多的索引。 2、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id ...转载 2019-08-30 14:50:05 · 65 阅读 · 1 评论