MySQL
文章平均质量分 97
猪哥66
微信搜索:裸睡的猪
展开
-
MySQL单表多字段模糊查询
今天工作时遇到一个功能问题:就是输入关键字搜索的字段不只一个字段,比如 我输入: 超天才 ,需要检索出 包含这个关键字的 name 、 company、job等多个字段。在网上查询了一会就找打了答案,原创 2016-07-22 12:09:43 · 1815 阅读 · 0 评论 -
MySQL优化之my.conf配置详解
最近项目不太忙,所以有时间静心来研究下mysql的优化,对于MySQL的设置是否合理优化,直接影响到网站的速度和承载量!同时,MySQL也是优化难度最大的一个部分,不但需要理解一些MySQL专业知识,同时还需要长时间的观察统计并且根据经验进行判断,然后设置合理的参数。 下面我们了解一下MySQL优化的一些基础,MySQL的优化我分为两个部分,一是服务器物理硬件的优化,二是MySQL自身(my.c...原创 2017-12-29 11:30:08 · 28202 阅读 · 3 评论 -
MySQL优化之推荐使用规范
一、基础规范使用InnoDB存储引擎支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高推荐使用utf8mb4字符集无需转码,无乱码风险, 支持emoji表情以及部分不常见汉字表、字段必须加注释方便他人理解字段意思,在后期维护中非常非常有用,不用去瞎猜这个字段是干嘛的。不在数据库做计算禁止使用存储过程、视图、触发器、Event。在并发原创 2017-12-29 14:43:56 · 5065 阅读 · 2 评论 -
MySQL优化配置之query_cache_size
原理MySQL查询缓存保存查询返回的完整结果。当查询命中该缓存,会立刻返回结果,跳过了解析,优化和执行阶段。 查询缓存会跟踪查询中涉及的每个表,如果这写表发生变化,那么和这个表相关的所有缓存都将失效。 但是随着服务器功能的强大,查询缓存也可能成为整个服务器的资源竞争单点。 初步设置默认这个开关是关闭的,就是禁止使用query_cache,查询是否使用语句如下: mysql>原创 2017-12-28 17:27:41 · 49474 阅读 · 0 评论 -
关于sql和MySQL的语句执行顺序(必看)
今天遇到一个问题就是mysql中insert into 和update以及delete语句中能使用as别名吗?目前还在查看,但是在查阅资料时发现了一些有益的知识,给大家分享一下,就是关于sql以及MySQL语句执行顺序:sql和mysql执行顺序,发现内部机制是一样的。最大区别是在别名的引用上。一、sql执行顺序(1)from(3) join(2) on(4) where...原创 2016-03-29 12:15:09 · 234633 阅读 · 82 评论 -
关于mysql的update、delete、和insert into能否使用别名问题
在工作中遇到这样一个问题,就是mysql在insert into时能不能使用别名,大家会很奇怪为什么insert into使用别名呢?原因在于原来的项目中使用了user表,新项目要将user表拆分为user和userinfo表,在不修改原代码的前提下,将user extends userinfo,而持久层用的是mybatis,所以写sql段的时候,get时要获取user和userinfo,这样就使原创 2016-03-30 22:48:34 · 11521 阅读 · 2 评论 -
SQL三表左关联查询
今天在开发的时候遇到了一个需求就是三遍关联查询,表A包含有表B和表C的uid,然后使用left join左关联查询:SELECT c.`uid`, `fromuseruid`, `touseruid`, `refuid`, `refname`, `type`, `tousertype`, `desc`, `file`, `result`, `status` ,e.`uid`,e.`showna原创 2016-07-26 12:18:21 · 12539 阅读 · 0 评论 -
MySQL查询昨天的数据
SELECT * FROM `表名` WHERE TO_DAYS(`时间字段名`) = TO_DAYS(NOW()) - 1; 需要前几天的话就在后面减几天。原创 2017-10-13 11:16:08 · 5262 阅读 · 0 评论 -
MySQL将utf8字符集改为utf8mb4
前言今天在查看tomcat日志时发现了一个错误:Cause: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x82\xF0\x9F...' for column 'name' at row 1在网上查找了说是mysql的字符集编码的问题,因为mysql的utf8编码最大是3个字节,而现在比较流行的emoji表情是四原创 2017-09-06 13:43:54 · 2816 阅读 · 0 评论 -
MySQL开启远程连接权限
对于我们刚开始安装的mysql获取mariadb来说,默认是不开启远程连接的。所以需要我们手动开启远程连接的权限。登录mysql mysql -u root -p Enter password:如果刚安装没有设置密码的话就直接回车切换到mysql这个数据库use mysql;修改root的host为% update user set host原创 2017-06-15 15:58:56 · 1797 阅读 · 2 评论 -
MySQL查看表占用空间大小
需求:我们在选购服务器硬盘时,通常需要先估算一下数据量。比如我们现在做的项目,百万级用户,然后在现有的数据结构中插入一万条数据,然后根据相应的需求去计算出实际生产中的数据量。前言:在mysql中有一个默认的数据表`information_schema`,information_schema这张数据表保存了MySQL服务器所有数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限原创 2017-04-18 14:02:34 · 14233 阅读 · 0 评论 -
SQL模糊查询
今天上班碰到了需要模糊查询的,然后上网查了查,自己结合网上的知识然后写这篇文章。在进行数据库查询时,有完整查询和模糊查询之分。一般模糊查询语句如下:SELECT 字段 FROM 表 WHERE 某字段 Like 条件1,% :表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。比如 SELECT * FROM [us原创 2016-05-25 14:00:20 · 610 阅读 · 0 评论 -
MySQL、MariaDB修改默认字符集
现在我自学到了SQL语句,发现在没有选择字符集时不能存入中文,然后今天看视屏,发现在自己的默认字符集是latin1,这是什么鬼,然后自己上网查了,发现当初安装没设置就默认这个字符集,哦忘了我的MySQL是解压版,原因是安装版一直安装不上然后我就开始百度:怎么样修改默认字符集,终于找到一篇博文,就是下面这篇,其中我提取了有用得精华,当然最下面我也会给出那篇博文的URL;首先你要查看自原创 2015-09-12 15:13:26 · 10315 阅读 · 0 评论 -
MySQL casting from decimal to string(mysql decimal 转 varchar)
今天群里一个哥们问我mysql怎么将decimal转成varchar,经过查阅资料发现,mysql好像不能将decimal直接转换成varchar,但是可以转成char,原文链接:http://stackoverflow.com/questions/5114959/mysql-casting-from-decimal-to-string类似于这样的:SELECT CAST(SUM(de原创 2016-12-12 21:37:09 · 18023 阅读 · 0 评论 -
mysql group by
使用group by 分组查询 显示大于2条的数据select useruid, count(*) as count from `safeqa` group by `useruid` having count > 2这是数据结构原创 2016-09-28 12:29:47 · 579 阅读 · 0 评论 -
MyBatis映射文件
guserdb2.userinfoon expert.useruid = userinfo.uid`showname` like CONCAT('%',#{showname_lk},'%')`company` like CONCAT('%',#{company_lk},'%')`job` like CONCAT('%',#{job_lk},'%')expert.`uid`, `原创 2016-07-27 13:39:44 · 2118 阅读 · 0 评论