MySql
qq_33729083
这个作者很懒,什么都没留下…
展开
-
mysql空字符串和null
当count统计数量的时候。空值(null)并不会被当成有效值去统计。同理,sum()求和的时候,null也不会被统计进来,这样就能理解,为什么null计算的时候结果为空,而sum()求和的时候结果正常了。结论:所以在设置默认值的时候,尽量不要用null当默认值,如果字段是int类型,默认为0;如果是varchar类型,默认值用空字符串(’’)会更好一些。带有null的默认值还是可以走索引的,只是会影响效率。当然,如果确认该字段不会用到索引的话,也是可以设置为null的。在设置字段的时候,可以给字原创 2021-04-29 17:26:52 · 481 阅读 · 0 评论 -
MySQL时间段datetime格式查询
原创 2021-04-29 17:12:23 · 327 阅读 · 0 评论 -
mysql 中find_in_set()用法
第一种有个文章表里面有个type字段,它存储的是文章类型,有 1头条、2推荐、3热点、4图文…1,12,13 等等 。现在有篇文章他既是 头条,又是热点,还是图文,type中以 1,3,4 的格式存储。那我们如何用sql查找所有type中有4图文标准的文章呢??select * from article where FIND_IN_SET(‘4’,type)第二种三级分类的商品商品表中存一个分类id 例如 6商品表中存一个分类path_id 例如 1,2,66上级是2 2上级是原创 2021-04-17 14:48:28 · 115 阅读 · 0 评论 -
商品的sku设计msyql数据库表
商品表:原创 2021-04-16 16:45:58 · 471 阅读 · 0 评论 -
Mysql中int(1)的误解及说明
Mysql中int(1)的误解及说明在mysql中使用int相关的数据类型时, 如果不太了解其存储方式, 会产生一些误用的情况.如: 只保存0-9之间的数字, 可能会直接用int(1).习惯性的以为int(1)就相当于varchar(1)一样, 其实不然.下面来说下int相关数据类型的一些简单介绍:数据类型/字节及取值范围类型 字节 最小值 最大值tinyint 1 -128 127smallint 2 -32768 32767mediumint 3 -8388608 8388607in原创 2020-12-04 16:23:27 · 455 阅读 · 0 评论 -
MySQL如何选择float, double, decimal(支付一般1元存成100分)整型
前言我们知道在MySQL中有3种类型可以表示实数,分别是float,double和decimal。关于如何合理得使用这三种类型,网上的答案也层出不穷。但是究竟该选择哪一种类型,好像并没有统一的答案,接下来,将通过一个例子来说明什么情况下选择float,什么情况下选择double,什么情况下选择decimal。相信对这个例子的剖析之后,你就会明白什么时候用什么样的类型实数类型举个例子假如我们有一张表,用来存储用户的积分,表定义如下:CREATE TABLE f (f1 float(10,2) DE转载 2020-11-28 14:32:14 · 466 阅读 · 0 评论 -
mysql in索引问题
为什么写这篇文章呢?因为我不想让大家在错误下去!昨天 CSDN 正在进行一个 2018 年的博客之星活动,入围了 200 名的博客专家!大家正在讨论说 2018 年博客之星页面有 bug 的问题时,有一位网友发了一张图片,一条 SQL 查询有问题。于是下面就有几个回答说 MySQL 查询 in 是不走索引的!哇,我惊呆了。这种话都出来了!我想证明我是错的,于是我到网上搜索了非常多的文章,什么 MySQL 优化实战,MySQL 军规 36 条,30条SQL优化军规,SQL语句优化原则,mysql语句优化建原创 2020-11-27 21:53:08 · 517 阅读 · 0 评论 -
mysql in优化未测试
现在有两个表,table1和table2,table1有1千万数据(id 主键索引),table2有三条数据(uid字段 3,5,7);select * from table1 where id in ( select uid from table2 );眨眼一看感觉这条语句应该很快;可能你会一厢情愿的以为 先执行括号里面的语句,然后在执行外层的select;外层的select用上了 id主键速度应该飞起来才对;实际上这条语句执行非常慢,我这里测试20s;通过 explain 分析,这条语句没有用原创 2020-11-27 21:44:38 · 71 阅读 · 0 评论