
sql优化
开心就好__
这个作者很懒,什么都没留下…
展开
-
Mybatis分页插件(PageHelper)数据量大时查询慢
pagehelper分页查询很慢原创 2022-09-19 10:01:30 · 2266 阅读 · 0 评论 -
mysql-在库中查找含有{name}字段的表
例如,我要查找goods库和base库中,哪些表中含有name字段,则sql如下:SELECT DISTINCT(table_name), TABLE_SCHEMA FROM information_schema.columns WHERE column_name like '%name%'AND TABLE_SCHEMA in ('goods', 'base');原创 2022-04-21 19:51:14 · 852 阅读 · 0 评论 -
mysql where条件中字符集转换
现有两张表goods 和category(注意两张表的字符集不同):CREATE TABLE `goods` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id ', `goods_no` char(10) CHARACTER SET sjis NOT NULL COMMENT '商品编码', `goods_name` varchar(255) CHARACTER SET sjis NOT NULL COMMENT '商原创 2022-03-23 17:23:46 · 1363 阅读 · 0 评论 -
informix数据库语法?
忘记了是否为informix数据库,这里的语法是不是截取字段中索引为4到5的两个字符和99比较是否相等,待验证(试了下mysql没有这个语法,select name[2,2] from user where uid=212131231执行报错),有知道的小伙伴可以告诉下另外有没有什么“宝库”,可以不用本地安装程序就可以联系mysql、Oricle、informix等数据库的sql...原创 2021-04-27 19:19:09 · 259 阅读 · 0 评论 -
mySql IFNULL()
If expr1 is not NULL, IFNULL() returns expr1; otherwise it returns expr2. IFNULL() returns a numeric or string value, depending on the context in which it is used.mysql> SELECT IFNULL(1,0); -> 1mysql> SELECT IFNULL(NULL,10); ->原创 2021-11-08 16:39:09 · 280 阅读 · 0 评论 -
oracle查看锁表语句
select b.owner,b.object_name, a.session_id, a.OS_USER_NAME, a.locked_mode from v$locked_object a, dba_objects b where b.object_id = a.object_id; select * from v$locked_object;原创 2021-11-01 16:12:50 · 633 阅读 · 0 评论 -
MySQL 查询数据库中包含指定字段的所有表名
SELECT table_name FROM information_schema.columns WHERE column_name=‘字段名’ AND TABLE_SCHEMA = ‘库名’;原创 2021-10-27 10:52:16 · 431 阅读 · 0 评论 -
MySQL教程之concat以及group_concat的用法
本文中使用的例子均在下面的数据库表tt2下执行:一、concat()函数1、功能:将多个字符串连接成一个字符串。2、语法:concat(str1, str2,…)返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null。3、举例:例1:select concat (id, name, score) as info from tt2;中间有一行为null是因为tt2表中有一行的score值为null。例2:在例1的结果中三个字段id,name,score的组合没有分转载 2021-10-25 09:53:42 · 215 阅读 · 0 评论 -
mysql语法:SUM IF
看到项目里有个sql是这样写的(图是盗的哈哈):还真没有见过,查了下原来是这意思,记录下:SUM(IF(hosts.state = 0, 1, 0)) AS hostNomal ,这个语句,当hosts.state的值为0时,和加1,不为0时,和加0。类似与程序里的三元表达式。...转载 2021-10-25 09:39:39 · 1015 阅读 · 0 评论 -
MySQL 快速创建千万级测试数据
背景在进行查询操作的性能测试或者sql优化时,我们经常需要在线下环境构建大量的基础数据供我们测试,模拟线上的真实环境。废话,总不能让我去线上去测试吧,会被DBA砍死的创建测试数据的方式编写代码,通过代码批量插库(本人使用过,步骤太繁琐,性能不高,不推荐)编写存储过程和函数执行(本文实现方式1)临时数据表方式执行 (本文实现方式2,强烈推荐该方式,非常简单,数据插入快速,100W,只...原创 2019-07-23 23:43:13 · 599 阅读 · 0 评论 -
结合实际项目,谈谈如何进行SQL查询优化
查询优化完整示例工程:data-init,包括数据库表的 ddl 和 dml,以及数据批量的生成相关表涉及的表不多,一共三张:额度表、记录表 、 存款表额度表 t_custmor_creditCREATE TABLE t_customer_credit ( id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自增主键', lo...原创 2019-07-23 23:35:50 · 165 阅读 · 0 评论 -
这几个错误的SQL写法,你不会还在用吧?
1、LIMIT 语句分页查询是最常用的场景之一,但也通常也是最容易出问题的地方。比如对于下面简单的语句,一般 DBA 想到的办法是在 type, name, create_time 字段上加组合索引。这样条件排序都能有效的利用到索引,性能迅速提升。SELECT * FROM operation WHERE type = 'SQLStats' AND name = 'S...原创 2019-07-23 23:01:45 · 145 阅读 · 0 评论 -
面试官:数据量很大,分页查询很慢,有什么优化方案?
面试官:数据量很大,分页查询很慢,有什么优化方案?当需要从数据库查询的表有上万条记录的时候,一次性查询所有结果会变得很慢,特别是随着数据量的增加特别明显,这时需要使用分页查询。对于数据库分页查询,也有很多种方法和优化的点。下面简单说一下我知道的一些方法。准备工作为了对下面列举的一些优化进行测试,下面针对已有的一张表进行说明。表名:order_history主要字段:unsigned ...原创 2019-07-11 14:21:11 · 185 阅读 · 0 评论