MySQL
文章平均质量分 51
Lcwai
有问题解决了,它就不复存在
展开
-
记录一次接近24万条数据导入Mysql的过程
根据削峰填谷的思想,今天尝试了一个新方法原创 2024-01-09 14:28:04 · 396 阅读 · 1 评论 -
MySQL小数存储时不建议使用double
今天做项目时遇到一个比较奇怪的情况,某个存储过程在数据表中取值,表中的该值(amount_second)的类型是double(13,2),存储的值为-3.22。直接用语句读取时没有此问题,取出的值为-3.22,但是使用存储过程取出值为存储过程如下:CREATE DEFINER=`cashuser`@`%` PROCEDURE `select1`()BEGIN DECLARE selectsql VARCHAR(4001); SET selectsql = "SELECT chang原创 2021-12-08 18:08:51 · 1565 阅读 · 0 评论 -
解决 MySQL存储过程插入中文的错误,代码: 1366 Incorrect string value: ‘\xE6\x88\x91%$#...‘
在调用以前同事的一个接口时,发现使用MySQL的存储过程插入中文时报错。错误代码: 1366Incorrect string value: '\xE6\x88\x91%$#...' for column 'title' at row 1在title中插入英文和数字都没问题,当包含中文时就会报错。初时以为数据库字符集的问题。SHOW VARIABLES LIKE 'character%';SHOW VARIABLES LIKE 'collation_%';发现character_set_da原创 2020-09-18 14:01:50 · 909 阅读 · 2 评论 -
使用MySQL从20万条数据中通过筛选随机取出1条数据的方法
因为业务需要,要求在一个where筛选完的数据集中随机取出1条数据。经典的方法SELECT * FROM table where 条件 ORDER BY RAND() limit 1;适用入门级应用,怎么这样说呢?因为数据量小时,倒没多大问题,由于会进行全表扫描,当数据量渐渐巨型时,查询时间会相当变态。本地环境运行需时在0.276s左右。百度出来别人验证过,性能高效的方法是SELE...原创 2019-03-07 19:58:40 · 3135 阅读 · 3 评论