
数据库
文章平均质量分 61
君を見つけて
这个作者很懒,什么都没留下…
展开
-
Java的Mybatis中,以最简单的方式实现按年月日时分秒查询。
需求如下:首先,传入的参数类型,要为Date类型。这里以实体类举例:@Data@EqualsAndHashCode(callSuper = true)public class OutwardParams extends BaseEntity { @ApiModelProperty("被叫号码") private String calleeNum; @ApiModelProperty("部门Id") private Long deptId; @Ap原创 2022-03-02 15:10:29 · 1701 阅读 · 0 评论 -
mysql 查询一条语句中,哪些走了索引,并对没走索引的进行优化。
在需要查询的Sql前加上‘EXPLAIN’即可。示例某条sql要联调查询4张表,分别为sys_user,sys_user_fs,explicit_number,sys_dept。他们各自表的索引和字段如下sys_user:sys_user_fs:explicit_number:sys_dept:现在我们执行这条sql语句,来看看用到了哪些索引。EXPLAIN SELECT u.user_id, u.dept_id, u.user_name, u.real_name, u.原创 2021-12-13 18:57:34 · 1516 阅读 · 0 评论 -
mysql 统计报表界面查询案例 经典sql语句
要照着一个界面实现一个报表及其报表统计的查询功能。界面如下:而我,则要只通过一条sql语句,来完成所有字段的展示。根据界面得知,查询条件有4个,分别为商机名称,单位简称,开始时间,结束时间。排序条件有5个,分别为派单数,外呼数,呼通数,有意向数,呼叫时长要查询出的字段有14个。现在,我要照着这个界面实现这个功能,方案是通过一条sql语句来实现,而不是在java层做处理那么,既然要实现,我们就需要先清楚这之间的字段关系,首先我先介绍案例中,我们要用到的4张表分别为business,act原创 2021-09-06 02:39:56 · 3121 阅读 · 0 评论 -
SpringBoot手动提交事务。
背景做一个迁移项目,由原先的C#迁移到java。但是比较操蛋的是,公司要求业务逻辑按照C#实现,而C#中有用到手动控制事务,java这边用的则是springboot框架。要知道,普遍情况下,一般是是使用@Transactional来进行自动事务提交或回滚的。那么,在SpringBoot中,我们该如何实现呢?SpringBoot实现手动事务我现在举例实现一个业务。有两个Service层的方法,他们都在同一个类里头,一个方法A,一个方法B。方法A调用方法B,方法B里头则会调用dao层来操作数据库;原创 2021-07-05 11:36:55 · 8609 阅读 · 0 评论 -
windows下,将mysql数据库存放在不同的硬盘(盘符)并使用。
案例背景要实现大数据的插入,默认数据库的存储盘为机械硬盘,故插入速度效率较低。因此想要在将数据库建立在固态硬盘上,以此来提高插入效率。但问题是,如果通过更改my.ini配置文件来指定数据的存储路径的话,因为我们需要将原有的、存储在机械硬盘的数据都要迁移到这个路径,这将会很麻烦,而且会固态硬盘的存储空间本就不大。所以,我想mysql数据库能够映射到机械硬盘存储的数据信息,也能映射到在固态硬盘中存储的信息。实现该案例中,我的机械硬盘盘符为E,固态硬盘盘符为D。通过查看my.ini配置文件得知,数据原创 2021-05-19 11:21:30 · 3490 阅读 · 0 评论 -
从表拆分到数据装填,再到分表查询。手把手一步步实现水平分表业务
技术框架Mybatis背景要处理一张亿级数据量的表,它有两个字段,分别为userId和PhoneNumber,两个字段数据都为数字,类型为varchar。而一个userId可以有多个PhoneNumber,因此注定了limit1,1这种语句优化是无效的。在当前一亿数据量的情况下,一个WHERE查询要花费5分钟,并且加索引也是无效的。此时想到了分表,并且显而易见的要采取水平分表方案。可是分表到底要怎么分?在这之前只是听到过,但具体不知道如何实现。经过建议,知道了可以用sharding-jdbc框原创 2021-03-30 01:24:13 · 1182 阅读 · 2 评论 -
SQL条件句/BeetlSQL 一个必须条件基础上的第二条件
语句:SELECT * FROM t_match WHERE (yyyymmdd = "20201010") AND (homeName LIKE "%FC%" OR guestName LIKE "%FC%");解释:在匹配到’yyyymmdd’字段数据为’20201010’的基础上,homeName字段模糊匹配"FC"字符,或guestName字段模糊匹配"FC"字符....原创 2020-10-14 15:06:32 · 760 阅读 · 0 评论 -
通过java对MongoDB进行分组查询。
需求背景:集合‘matchs_info’中存在一个叫做’yyyymmdd’的字段,字段内容为String类型的日期格式。想要对该字段进行分组,这样的话就能查到这个集合中有多少个日期数据。网上查了两个小时,可算找到了办法。实现:需要用到的对象有mongoTemplate以及Aggregation。 public void groupOfMongodb(){ Aggregation aggregationObj = Aggregation.newAggregation(Aggregation原创 2020-10-13 16:55:29 · 2653 阅读 · 0 评论 -
BeetlSQL Query对象根据实体类保存对象为空字段的解决。
背景:欲通过Query对象的insert方法根据实体类对象添加数据到数据库,但是出现了字段内容为空的情况。原因:http://ibeetl.com/guide/#/beetlsql/beetlsqlconfig?id=%e5%bc%80%e5%8f%91%e6%a8%a1%e5%bc%8f%e5%92%8c%e4%ba%a7%e5%93%81%e6%a8%a1%e5%bc%8f数据库字段名与java属性名的映射关系必须配置正确,否则会导致各种问题,如下是一些建议默认为:字段名字是user_id,原创 2020-10-10 15:05:09 · 638 阅读 · 0 评论 -
Spring Data MongoDB根据条件更新某字段.
SpringDataMongoDB是MongoDB必须的依赖,它其中有Query和Update等对象,也有mongoTemplate注入对象.我们可以通过这些来实现有条件的更新某些字段,就如同sql中的语句’set number = 20 where age = 10’一样.public class WebTest {@Autowired private MongoTemplate mongoTemplateObj;@PostMapping("/matchSave") public Strin原创 2020-10-04 10:29:48 · 3777 阅读 · 13 评论 -
SpringDataJpa+MongoDB进行分页查询和模糊查询
参考:https://blog.csdn.net/weixin_43935907/article/details/91354738的’方式二:通过原生的方法实现条件查询、分页和排序’利用org.springframework.data.domain包的Pageable类实现.查询方式一:无条件分页查询 public List<MatchsInfo> findPage(int currentPage,int pageSize) { Pageable pageableObj = Pa原创 2020-09-28 00:19:25 · 2715 阅读 · 3 评论 -
BeeltSQL删除表中所有数据
matchDaoObj.getSQLManager().query(Match.class).delete();用query对象的delete方法即可删除.我用的格式为:dao对象名.getSQLManager().query(与该dao对象相对应的实体类命.class).delete()原创 2020-09-25 00:05:22 · 409 阅读 · 0 评论 -
BeetlSQL进行分页查询/模糊分页查询
@Override public List<Match> findPage(int currentPage, int pageSize) { // TODO Auto-generated method stub PageQuery<Match> queryOfFindPage = new PageQuery<>();//创建BeetlSQL内置的PageQuery对象 queryOfFindPage.setPageNumber(current原创 2020-09-22 15:44:29 · 2735 阅读 · 0 评论 -
Mysql函数应用
字符串函数一.CONCAT(s1,s2…sn) 合并字符串函数:CONCAT(s1,s2…sn)描述:字符串 s1,s2 等多个字符串合并为一个字符串实例:select concat('传智播客','-','黑马程序员');SELECT CONCAT(user_test.`address`,user_test.`name`) FROM user_test;SELECT CONCAT(ut.name,ut.address) FROM user_test ut;二.CHAR_LENGTH(st原创 2020-09-04 14:53:17 · 237 阅读 · 0 评论 -
Mysql数据库优化
测试素材 生成十万条数据一.创建表index_testDROP TABLE IF EXISTS index_test;CREATE TABLE index_test(id BIGINT(20) PRIMARY KEY NOT NULL AUTO_INCREMENT,USER VARCHAR(16) DEFAULT NULL,psd varchar(64) default null/*psd mediumint DEFAULT 0 存储随机数据*/)ENGINE=MyISAM DE原创 2020-08-28 14:02:05 · 216 阅读 · 0 评论 -
SpringBoot应用MangoDB数据库 之 MongoRepository对象
这篇是在之前整合springboot整合mongodb那篇文章基础之上的,整合请移步MongoRepository有以下方法:count()统计总数count(Example< S > example)条件统计总数delete(T entities)通过对象信息删除某条数据deleteById(ID id)通过id删除某条数据deleteALL(Iterable<? extends T> entities)批量删除某条数据deleteAll() 清空表中所有的数据ex转载 2020-08-12 18:22:42 · 577 阅读 · 0 评论 -
mongoDB 安装/入门到精通/集成SpringBoot
通过命令行连接mongodb先切换到MongoDb的bin目录下C:\Users\1>D:D:>cd D:\develop\MongoDB\Server\3.4\bin输入 mongo 按回车连接mongoDB数据库D:\develop\MongoDB\Server\3.4\bin>mongo原创 2020-08-11 23:26:44 · 303 阅读 · 0 评论 -
Mybatis获取新增表的自增值
代码示例:<!‐‐新增‐‐> <insert id="add" parameterType="com.itheima.pojo.CheckGroup"> <selectKey resultType="java.lang.Integer" order="AFTER"keyProperty="id"> SELECT LAST_INSERT_ID() </selectKey> ins原创 2020-07-13 01:16:03 · 424 阅读 · 0 评论 -
总结44 Spring框架用于Mysql数据库的事务处理
概念NzZG4ubmV0L2NoaW5hdG9wbm8x,size_16,color_FFFFFF,t_70)数据库中’事务处理’概念是什么我就不多说了吧?我们同样也可以通过JAVA来连接数据库进行事务处理,但是在以前,要通过JAVA进行事务处理是非常繁琐的.得益于后来的Spring框架,这一操作变得非常简单.但是要注意的是,在JAVA中,事务处理的业务逻辑是在Service层进行的,...原创 2020-03-24 04:50:48 · 284 阅读 · 0 评论 -
centos7下安装redis
准备:下载/上传redis安装包下载方案:wget http://download.redis.io/releases/redis-4.0.6.tar.gz如果提示不存在wget软件,则需要先安装wget.命令为:yum -y install wget上传方案:你也可以直接下载’redis-4.0.6.tar.gz’到主机上,然后上传到centos7中运行.这里提供一下:链接: h...原创 2020-03-18 00:05:52 · 126 阅读 · 0 评论 -
centos7安装mysql5.6
mysql应用0.上传MySQL的tar包/** * MySQL-5.6.22-1.el6.i686.rpm-bundle.tar */1.查看是否安装过mysqlrpm -qa | grep mysql/** * mysql-libs-5.1.73-5.el6_6.i686 */ 2.查看是否存在centos7系统自带的数据库 mariadbrpm -qa|grep...原创 2020-03-17 23:49:48 · 198 阅读 · 0 评论 -
SERVER SQL的使用笔记
一.表示字符串时,不能用双引号的,而只能用单引号.为此,苦恼了好久.才发现,原来MSSQL中,字符串只能用单引号.如:SELECT * FROM [userinfo] WHERE username = '123';二.导入TXT文本到数据库,参考这里:https://www.cnblogs.com/yangchengdejishuzhai/p/9644770.html...原创 2020-03-09 23:11:00 · 138 阅读 · 0 评论 -
总结39 Redis(Jedis)数据库
概念Redis数据库是非关系型数据库的一种.那么,什么是非关系型数据库呢?就是不能类似于SQL那样,将表与表之间进行串联的数据库.区别:1.Redis不支持Sql语句, 相当于超大的map集合.数据都存储在内存中.2.SQL数据库是将数据信息存储在硬盘,Redis是将数据信息储存在内存3.Redis是将信息临时储存在内存,如果在关闭时没有设置保存机制,那么Redis服务关闭后,所有数...原创 2020-03-07 00:23:27 · 207 阅读 · 0 评论 -
SQL SERVER 2008R2恢复大数据库文件时一直处于'正在执行(0%)'的问题
恢复bak类型的数据库是,一直处于’正在执行(0%)'状态.经网上搜索后,查出原因.后用以下代码解决USE master RESTORE FILELISTONLY FROM DISK = 'F:\QQGroup.bak' Go RESTORE DATABASE quntest FROM DISK = 'F:\QQGroup.bak' WITH MOVE 'QQ...原创 2020-01-18 15:52:46 · 4706 阅读 · 0 评论 -
java总结20 JDBC数据池的C3P0,Druid 和JdbcTemplate及单元测试功能的概念与应用
数据库连接池的概念数据库连接池目的在于让数据库的执行效率更加高效,它能够事先通过配置文件定义’池’中的连接数量(即配置文件的’最大连接数’).来达到’池’的效果.当有人要用时,则从中抽取一个连接数给其使用,而当使用完毕后,通过’close’释放资源的方法,将其’连接’返还给数据吃.而数据库连接池基于各种公司开发的’数据池实现Jar包’而不同,比较出名的是[C3p0数据池jar包]和[Druid...原创 2020-01-13 01:58:21 · 376 阅读 · 0 评论 -
总结19 JDBC底层应用(弃用) 在JAVA中对数据库进行操作.
JDBCJDBC用于在JAVA中对SQL数据库进行操作,包括但不限于Mysql,Oracle(甲骨文),Server Sql.这些都可以通过JDBC用统一标准进行实现,那就是导入上述Mysql环境各自的jar包.如Mysql的Jar包’mysql-connector-java-5.1.37-bin.jar’一.使用步骤实现步骤有两种方案,第一种是用**createStatement(...原创 2020-01-12 18:40:02 · 461 阅读 · 0 评论 -
总结18 SQL数据库中多表查询之内连接,外连接,与事物和权限管理的应用.(简略)
多表查询SELECT * FROM 表A,表B多表查询能够准确地,去重复式地查询出数据基础注意:不管是内连接查询还是外连接查询,被表达的字段必须具有关联. 比如两个存在外键约束的关系.即:要被声明为外键约束.内外连接的区别一.多表查询之内连接查询概念显示内连接和隐式内连接只有语法外表的不同,其逻辑是没有区别的**方式1:隐式内连接格式:SELECT * FROM 表A,表B...原创 2020-01-09 18:59:57 · 409 阅读 · 0 评论 -
总结 17 SQL约束概念与语法应用,以及表的关系对选关系和级联操作
约束的概念约束就是为某个列的数据制定出一种规范,如:指定某个列中的数据不能存在重复,指定某个列中不能存在值为’NULL’,指定某个列中的数据只能为’xxx’等等.值得注意的是,一条SQL语句是可以定义多个约束语句,前提是要逻辑通顺.且约束语句不分先后.如:CREATE TALBE 自定义表名( 列名 数据类型 NOT NULL UNIQUE,);关于主键约束.主键约束具...原创 2020-01-08 20:29:48 · 316 阅读 · 0 评论 -
总结16 SQL数据库应用概念与SQL数据库语法.
SQL软件 Mysql 的应用命令1.启动mysql服务:net start 数据库服务名 列如:net start mysql512.登录本机Mysql命令:mysql -u帐户 -p密码3.登陆远程Mysql命令:mysql -h地址IP -u帐户 -p密码4.退出Mysql命令:exit/quit5.开启远程访问权限:GRANT ALL PRIVILEGES ON . TO...原创 2020-01-07 00:38:36 · 693 阅读 · 0 评论