数据库
记录、回顾数据库学习笔记
StephenJava
【公众号:Stephen】一个毕业三年后自学 Java 入行的程序员。
展开
-
Mybatis XML sql 也可用临时表
有些业务逻辑并非只能通过Java代码实现,巧用临时表也可以的。demo<select id="getTest" resultType="java.lang.String"> select * into #TEMPTable from Table where a = #{a} select c from #TEMPTable where b = #{b} drop table #TEMPTable</select>...原创 2021-05-28 09:51:33 · 1227 阅读 · 0 评论 -
SQL排序后编序号
select Row_NUMBER() OVER (ORDER BY a.id ASC) AS 序号,a.* from table a或者:select RANK() OVER (ORDER BY a.id ASC ) AS 序号,a.* from table a原创 2021-05-27 12:44:04 · 879 阅读 · 0 评论 -
SQL 查询是否存在,别用count,很耗时间啊
例如:-- SQLselect count(1) FROM Table WHERE Field1 = 'a' and Field1='b'-- Javaint num = XXXDao.countXXXByXXX(params);if( num > 0 ){ //存在}else{ //不存在}优化-- SQLselect top 1 1 FROM Table WHERE Field1 = 'a' and Field1='b'-- JavaInteg原创 2021-04-19 15:05:28 · 422 阅读 · 0 评论 -
螺丝钉screw简洁好用的数据库表结构文档生成工具
工具地址:https://github.com/pingfangushi/screw生成html如图效果原创 2020-10-22 16:09:52 · 489 阅读 · 0 评论 -
IDEA Database 查询中文乱码的解决方法
原创 2020-05-28 12:40:27 · 3715 阅读 · 3 评论 -
DataGrip Live Template 提高效率
Live Template 配置代码片段,可缩减业务 sql 编写时间,提高效率。思路:按业务数据表编写 sql 代码片段; 按业务功能模块编写 sql 代码片段; 按 Bug 处理类型编写 sql 代码片段; 常用系统配置表编写 sql 代码片段 ……...原创 2020-04-29 07:53:13 · 1255 阅读 · 0 评论 -
SQLServer 查看死锁
查看表死锁select object_name(resource_associated_entity_id) as tableName, request_session_id as pid from sys.dm_tran_lockswhere resource_type = 'OBJECT'结束死锁进程kill 70原创 2020-01-09 12:27:27 · 571 阅读 · 0 评论 -
SQLServerException: 将截断字符串或二进制数据
java 报错:com.microsoft.sqlserver.jdbc.SQLServerException: 将截断字符串或二进制数据。因为插入数据时,数据类型或者数据长度和数据库表中字段所对应的类型不符合。处理:检查数据类型和数据长度。...原创 2020-01-07 10:05:28 · 2063 阅读 · 1 评论 -
SQLServer select a,b from (select a,b from BB) t 中 t 不能漏
SQLServer select a,b from (select a,b from BB) t 中 t 不能漏原创 2019-12-10 22:27:54 · 618 阅读 · 0 评论 -
一对多的情况 left join 使用
先用distinct 去重让连接表和主表形成一对一的数据关系。select a.a1,a.a2,a.a3,b.b1,b,b2 from tableAa left join (select distinct b1,b2 from tableB) b on b.b1= a.a2原创 2019-12-10 22:24:55 · 5400 阅读 · 0 评论 -
SQL Server 常用函数 && 函数大全
在项目开发过程中,经常遇到一些需求 SQL要用到函数,遇到问题第一想法就百度,google 按问题搜索解决方法。其实这是不好的思维习惯,应该系统的了解、学习 SQL的使用。在需要用的时候能够在了解、学习过的思维基础上,不确定用法的时候在看下文档确定用法。看了文档还不确定怎么用时,再去搜索别人的使用 demo 和场景是否符合遇到的问题,做为参考。这里两个链接是一些常用函数和函数...原创 2019-07-20 08:41:01 · 410 阅读 · 0 评论 -
MySQL常用函数
跳转转载 2019-07-18 19:37:26 · 266 阅读 · 0 评论 -
Oracle 常用函数
链接原创 2019-07-20 08:41:24 · 201 阅读 · 0 评论 -
SQLServer RANK() 排名函数
-- 例子表数据SELECT * FROM test;-- 统计分数SELECT name,SUM(achievement) achievement FROM test GROUP BY name; -- 按统计分数做排行SELECT RANK() OVER( ORDER BY SUM(achievement) desc) 排行,name,SUM(achievement) achiev...原创 2019-12-06 21:37:32 · 5232 阅读 · 0 评论 -
SSMS SQL智能提示插件
SQL Prompt 7.2插件下载和安装说明SQL Prompt 9 下载地址原创 2019-11-08 07:21:03 · 3647 阅读 · 0 评论 -
Mycat 学习
Mycat原理、应用场景MyCat安装与测试教程MyCat 基本配置MyCat使用Mycat和分库分表MyCat分库分表策略详解认识 MyCatMyCat 基本配置mycat 读写分离mycat:垂直分库mycat:水平分库之范围分库和Hash分库mycat:水平分库之按月分库mycat:水平分库之求模分库mycat:全局表...原创 2019-11-03 12:02:04 · 294 阅读 · 0 评论 -
必须掌握的13种SQL语句优化
1、对查询进行优化,应尽量避免全表扫描,首先应考虑在where 及order by 涉及的列上建立索引。2、应尽量避免在where 子句中使用!= 或<> 操作符,否则引擎放弃使用索引而进行全表扫描。3、应尽量避免在where 子句中对字段进行 null值判断。否则将导致引擎放弃使用索引而进行全表扫描,如:select * from t where num is null...转载 2019-07-04 12:08:16 · 1015 阅读 · 0 评论 -
MySQL 好文(持续收集更新)
MySQL 安装(Windows 环境)MySQL 详细学习笔记12 条 MySQL 优化技巧,提速不止十倍!MySQL 海量数据的 5 种分页方法和优化技巧用了这么久的MySQL,你知道它的存储引擎吗?mysql支持原生json使用说明体验 MySQL 8.0 JSON聚合函数关于MySQL 8.0的几个重点,都在这里MySQL中JSON类型的使用MySQL5.7...原创 2019-08-29 10:11:58 · 273 阅读 · 0 评论 -
MySQL 安装(Windows 环境)
一、下载https://downloads.mysql.com/archives/community/二、解压后 新建 my.ini文件[mysql]# 设置mysql客户端默认字符集default-character-set=utf8mb4[mysqld]# 设置3306端口port = 3306# 设置mysql的安装目录basedir=D...原创 2019-07-08 20:57:29 · 559 阅读 · 1 评论 -
MySQL 优化总结文
MySQL优化总结巧用这19条MySQL优化,效率至少提高3倍原创 2019-07-26 20:28:01 · 607 阅读 · 0 评论 -
查询 MySQL 某个库的所有表名和表数据总数
SELECT table_name,table_rows FROM information_schema.tables WHERE table_schema='库名称' ORDER BY table_rows DESC;原创 2019-10-06 22:05:54 · 7020 阅读 · 3 评论 -
ElasticSearch 学习文收集
百度介绍全文搜索引擎 Elasticsearch 入门教程中文社区Elasticsearch【快速入门】ElasticSearch 史上最全最常用工具清单Elasticsearch SQL用法详解入门、索引管理、映射详解、索引别名、分词器、文档管理、路由、搜索详解centos7下搭建ElasticSearch中间件,常用接口演示SpringBoot2.0 整合 El...原创 2019-10-27 17:50:17 · 235 阅读 · 0 评论 -
DataGrip 导出 CVS 数据打开乱码解决方案
由于默认导出是 UTF-8 格式,CVS 文件用记事本打开另存为 UTF-8 格式文件保存后,打开就不乱码了!原创 2019-10-28 16:46:21 · 5388 阅读 · 1 评论 -
DataGrip 自定义代码补全设置
例如:输入stf + tab 自动补全为 select top 10 * from 。设置操作如下图:IDEA 自定义补全配置类似了。原创 2019-09-16 16:11:31 · 4675 阅读 · 0 评论 -
DataGrip 客户端工具修改更新数据操作
双击选中(可选中多列,批量更新)要修改的数据字段 --> 编辑-->提交:原创 2019-09-28 21:03:09 · 9333 阅读 · 4 评论 -
DataGrip 中文列名乱码如何解决
原文:https://segmentfault.com/q/1010000018838876解决方法:更改字体为微软雅黑原创 2019-09-16 15:14:20 · 7880 阅读 · 1 评论 -
SQLYog 快捷键
链接转载 2019-07-18 19:31:48 · 614 阅读 · 0 评论 -
数据库好文收集(持续收集更新)
MySQL 分区和分表知识总结Mysql5.7——分表和分区分表?到底该怎么分?数据库表分区是怎么回事?MYSQL实现数据库自动分区oracle_分区分区分库分表的思考如何做一次Elasticsearch技术分享?MySQL 分区分表应用场景分析和分区中可能遇到的坑点阿里不让多表join?我偏要!SQL行转列、列转行...原创 2019-09-13 07:17:31 · 298 阅读 · 0 评论 -
查询 SQL Server 某个库的所有表名和表数据总数
use ReportServer--数据库名称go DECLARE @TableName varchar(255); CREATE TABLE #GetRecordingTempTable([id] [INT] IDENTITY(1,1) NOT NULL, [TableName] varchar(255) NOT NULL, [RecordingCount] INT); DECL...原创 2019-10-06 21:52:58 · 1301 阅读 · 0 评论 -
SQLServer 查询某表的列名称、说明、备注、类型等信息
SELECT 表名 = case when a.colorder=1 then d.name else '' end, 表说明 = case when a.colorder=1 then isnull(f.value,'') else '' end, 字段序号 = a.colorder, 字段名 = a.name, 标识 ...原创 2019-09-03 15:31:20 · 1438 阅读 · 1 评论 -
查询 SQL Server TOP 20 最大耗时 sql
SELECT TOP 20 total_worker_time/1000 AS [总消耗CPU 时间(ms)], execution_count [运行次数], qs.total_worker_time/qs.execution_count/1000 AS [平均消耗CPU 时间(ms)], last_exe...原创 2019-10-06 21:25:05 · 980 阅读 · 0 评论 -
史上最全的MSSQL复习笔记
链接1什么是SQL语句sql语言:结构化的查询语言。(Structured Query Language),是关系数据库管理系统的标准语言。它是一种解释语言:写一句执行一句,不需要整体编译执行。语法特点:1.没有“ ”,字符串使用‘ ’包含2.没有逻辑相等,赋值和逻辑相等都是=3.类型不再是最严格的。任何数据都可以包含在‘ ’以内4.没有bool值的...转载 2019-07-17 21:07:02 · 491 阅读 · 0 评论 -
SSMS 快捷键
链接点链接查看。原创 2019-07-20 08:35:16 · 797 阅读 · 0 评论 -
SQL 关联查询
原创 2019-08-09 20:19:22 · 269 阅读 · 0 评论 -
Oracle Windows 环境下安装 + PL/SQL
Oracle 安装、PL/SQL 配置使用原文链接https://mp.weixin.qq.com/s/NVw-PDFi-8By4R0AJsslRg前言:因更换机械硬盘为 SSD 固态硬盘装了新 Windows 7 系统,需要重新搭建开发环境,把 Oracle 安装过程和 PL/SQL 配置使用做下笔记。一、原始文件win32_11gR2.zip PLSQL Developer...原创 2019-05-02 12:25:26 · 360 阅读 · 0 评论 -
Oracle 学习笔记(一)基本命令、用户管理
原文链接https://mp.weixin.qq.com/s?__biz=Mzg3MjA3NTE2NA==&mid=2247484267&idx=1&sn=0960d8e59eeb7ce669a56eda4a70e519&chksm=cef59998f982108eb868d56555c7659aa88f7142cd5b1bb0652e5c2d7cfb97bc...原创 2019-04-10 21:49:54 · 521 阅读 · 0 评论 -
Oracle 学习笔记(二)profile 管理用户口令、表的管理
使用 profile 管理用户口令概述:profile 是口令限制,资源限制的命令集合,当建立数据库的,oracle会自动建立名称为 default 的 profile 。当建立用户没有指定 profile 选项,那么 oracle 就会将 default 分配给用户。1.账户锁定概述:指定该用户登陆时最多可以输入密码的次数,也可以指定用户锁定的时间,一般用 dba 的身份去执行该...原创 2019-04-18 22:17:45 · 646 阅读 · 0 评论 -
Oracle 学习笔记(三)表查询
oracle 表查询oracle 表基本查询在此,基于 scott 用户存在的 emp,dept 表演示学习。emp 雇员表clerk 员工salesman 销售manager 经理analyst 分析师president 总裁mgr 上级的编号hiredate 入职时间sal 工资comm 奖金deptno部门编号...原创 2019-04-19 22:44:37 · 309 阅读 · 0 评论 -
Oracle 学习笔记(四)逻辑操作符、复杂查询
oracle表查询使用逻辑操作符号查询工资高于 500 或者是岗位为 MANAGER 的雇员,同时还要满足他们的姓名首字母为大写 JSELECT * FROM emp WHERE (sal >500 or job = 'MANAGER') and ename LIKE 'J%';使用 order by 子句 默认 asc按照工资的从低到高的顺序显示雇员的...原创 2019-04-23 21:14:15 · 391 阅读 · 0 评论 -
Oracle 学习笔记(五)常用函数
oracle 常用函数单行函数只处理单个行,并且为每行返回一个结果。1.字符函数concat(str1,str2)字符串拼接函数select concat('Hello ','World') from dual;等价于select 'Hello '||'World' from dual;initcap(str)将每个单词首字母大写,其他字母小写...原创 2019-04-23 21:53:19 · 648 阅读 · 0 评论