
SQL
Zale_J
博观而约取,厚积而薄发
展开
-
MySQL 排序,按照指定不规则顺序
有时候我们希望MySQL查询的时候按照自己指定的顺序进行排序,如11,9,10,12这样,此时我们可以使用FIELD方法实现SELECT * FROM temporary_worker_fee_day_count WHERE id IN (11,9,10,12) ORDER BY FIELD(id,11,9,10,12)原创 2020-09-27 14:37:26 · 453 阅读 · 0 评论 -
MySQL查看连接数最多的ip
最近测试环境的MySQL老是很卡,有时候甚至都连不上了,必须看看哪个沙雕创建了这么多连接。这时我们可以使用这个命令查看:select SUBSTRING_INDEX(host,':',1) as ip , count(*) as count from information_schema.processlist group by ip order by count desc;原来是测试在测,哈哈,算了,暂时先增加一下MySQL的连接数好了: set global max_user_conne原创 2020-07-29 14:26:44 · 736 阅读 · 1 评论 -
MySQL数据库表名和字段名有无长度限制?
MySQL数据库表名和字段名有无长度限制?其实是有的,都限制为64个字符。Oracle的话更少,只有30个字符。原创 2020-07-06 09:40:30 · 3042 阅读 · 0 评论 -
MyBatis报错-Operand should contain 1 column
MyBatis报错-Operand should contain 1 column原创 2020-06-30 10:25:44 · 926 阅读 · 0 评论 -
MyBatis MySQL 实现批量不存在则插入,存在则更新
在日常开发中,需要从数据库中批量导入所有数据,同时这些数据可能在目标表中存在,也可能不存在。因为数据量还比较大,如果一条一条在业务代码里判断然后插入或者更新,非常非常慢。这个时候,我们可以对判断【数据是否存在】的字段建立UNIQUE索引,然后使用如下的方式,进行批量地插入/更新<insert id="insertBatch" > INSERT INTO table(org_id, org_name, org_fullid, org_fullname, creator, gmt_c原创 2020-06-17 17:19:05 · 2276 阅读 · 0 评论 -
用简单JS实现代替MyBatis Log Plugin的功能
今天升级了IDEA到2020.1,发现MyBatis Log Plugin居然要收费了。。。虽然只要1美元,奈何贫穷如我。因为平时用到的只是简单的把问号转成正常SQL 的功能,因此就自己动手写了一个简单的小脚本,只要把MyBatis打印的日志复制到这个脚本中进行转换就会自动替换问号并打印对应的SQL了。支持多个SQL打印,还是挺实用的哈哈效果如下:代码也非常简单,思路就是根据Prepar:的位置判断一个SQL的开始结束范围,然后一个一个处理替换出来。大致如下: <!DOCTYPE htm原创 2020-05-21 11:07:02 · 2137 阅读 · 5 评论 -
MySQL 报错:1093 - You can't specify target table 'xxx' for update in FROM clause
今天在造测试数据的时候遇到一个问题,写了一个update语句:UPDATE employeeSET biz_supervisor_id = '123' WHERE id IN ( SELECT id FROM employee WHERE biz_supervisor_id = '321' )报了一个错> 1093 - You can't specify target table 'employee' for update in FROM clause网上搜了一下,大概是因为MySQ原创 2020-05-09 17:28:05 · 978 阅读 · 0 评论 -
在IDEA中使用Database数据库管理工具
在日常开发中,用到数据库是很平常的事,之前有同事推荐我用EasyCode进行一些代码的生成,需要使用到IDEA中的DataBase数据库管理工具,这边简单讲一下使用。首先,在IDEA任一个项目的右侧,都可以看到这样一个按钮当然,如果你一不小心把它给删了,你还可以在View->Tool Windows中重新打开之后我们点击Database中的加号,选择合适的数据源添加第一次打开它...原创 2020-04-28 15:04:07 · 2065 阅读 · 0 评论 -
连接阿里云mysql数据库报错
连接阿里云mysql数据库报错解决方案:mysql> use mysql;Database changed mysql> SET SQL_SAFE_UPDATES = 0;Query OK, 0 rows affected (0.00 sec)mysql> update user set Host='%' where User like '%root%';Quer...原创 2019-11-04 09:32:35 · 339 阅读 · 0 评论 -
2059-authentication plugin 'caching_sha2_password"cnnot bt loaded
错误提示出现了:2059-authentication plugin 'caching_sha2_password"cnnot bt loaded :原因:8.0改变了 身份验证插件 , 打开 my.ini (或者my.cofg) 可以看到变更了 5.7及其以前的方式:mysql_native_password解决办法:1:命令行键入数据库:mysql -uroot -p2:键入密码后...原创 2019-08-14 16:39:55 · 342 阅读 · 0 评论 -
在数据库中存储树形结构的数据
自我一对多。id parentId name1 null 中国2 1 上海市3 1 浙江省4 2 青浦区原创 2019-08-01 16:18:44 · 443 阅读 · 0 评论 -
根据navicat的create语句随机生成insert语句
就是一个简单的js脚本,根据navicat的create语句生成具有随机数据的insert语句,每秒能生成千把条吧。。。用于日常开发时随意生成一些随机的测试数据<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>根据navicat的create语句随机生成inser...原创 2019-07-04 20:56:15 · 2063 阅读 · 0 评论 -
MySQL IN与EXISTS的区别
分析我们用下面的这两条语句分析:select count(1) from orders o where o.user_id in(select u.id from users u);select count(1) from orders o where exists (select 1 from users u where u.id = o.user_id);先查询in后面的users表...转载 2019-06-28 15:36:16 · 157 阅读 · 0 评论