MySQL DataType--当整数列遇到小数
初始化数据:
## 创建测试表
CREATE TABLE `tb002` (
`c1` int(11) NOT NULL AUTO_INCREMENT,
`c2` int(11) DEFAULT NULL,
`c3` varchar(200) DEFAULT NULL,
PRIMARY KEY (`c1`),
KEY `IDX_C2` (`c2`)
); ## 插入测试数据
insert into tb002(c2,c3) select 1428,'';
insert into tb002(c2,c3) select 1429,'';
insert into tb002(c2,c3) select 1430,'';
查看当前表中数据:
## 查看表中数据
SELECT * FROM tb002; +----+------+------+
| c1 | c2 | c3 |
+----+------+------+
| 1 | 1428 | 1428 |
| 2 | 1429 | 1429 |
| 3 | 1430 | 1430 |
+----+------+------+
测试1:
## 测试1
select * from tb002 where c2=1429.5;
+----+------+------+
| c1 | c2 | c3 |
+----+------+------+
| 3 | 1430 | 1430 |
+----+------+------+ ## 测试2
select * from tb002 where c2<1429.5;
+----+------+------+
| c1 | c2 | c3 |
+----+------+------+
| 1 | 1428 | 1428 |
| 2 | 1429 | 1429 |
+----+------+------+ ## 测试3
select * from tb002 where c2<=1429.5;
+----+------+------+
| c1 | c2 | c3 |
+----+------+------+
| 1 | 1428 | 1428 |
| 2 | 1429 | 1429 |
+----+------+------+ ## 测试4:
select * from tb002 where c2=1429.5 or c2<1429.5;
+----+------+------+
| c1 | c2 | c3 |
+----+------+------+
| 1 | 1428 | 1428 |
| 2 | 1429 | 1429 |
+----+------+------+ ## 测试5:
select * from tb002 where c2=1429.5 union select * from tb002 where c2<1429.5;
+----+------+------+
| c1 | c2 | c3 |
+----+------+------+
| 3 | 1430 | 1430 |
| 1 | 1428 | 1428 |
| 2 | 1429 | 1429 |
+----+------+------+
上面测试中发现:
1、where c2=1429.5 or c2<1429.5 与 where c2<=1429.5 和 where c2=1429.5查询结果相同
2、where c2<=1429.5的查询结果中不包含where c2=1429.5的查询结果
测试2:
## 查询1
select * from tb002 force index(IDX_C2) where c2=1429.5;
+----+------+------+
| c1 | c2 | c3 |
+----+------+------+
| 3 | 1430 | 1430 |
+----+------+------+ ## 查询2
select * from tb002 force index(primary) where c2=1429.5;
Empty set (0.00 sec)
上面测试中发现:
1、强制走不同索引会导致查询结果不同(两次查询过程中无任何数据变化,使用RR事务隔离级别)
MySQL DataType--当整数列遇到小数的更多相关文章
- mysql的时间戳timestamp精确到小数点后六位
1.mysql的时间戳timestamp精确到小数点后六位. 公司业务使用到Greenplun数据库,根据查询的时间戳来不断的将每个时间段之间的数据,进行数据交换,但是今天发现,mysql的时间戳没有 ...
- 一起看看MySQL中的隐藏列
摘要:在mysql的多版本并发控制mvcc中,我们知道mysql中存在一些隐藏列,例如行标识.事务ID.回滚指针等,不知道大家是否和我一样好奇过,要怎样才能实际地看到这些隐藏列的值呢? 本文分享自华为 ...
- mysql修改列名和列类型
MySQL中修改列名或列的数据类型 (2012-04-03 08:59:25) 转载▼ 标签: mysql 修改列名 修改列数据类型 it 分类: 数据库 参考下面链接中的语法 http://dev. ...
- MySql给表添加列和注释
1.给表添加列 ALTER TABLE supplier_seller ADD COLUMN company_id INT NULL COMMENT '供应主体id'; 默认情况下,添加的列会添加到最 ...
- 怎么重置mysql的自增列AUTO_INCREMENT初时值
重置 MySQL 自增列 AUTO_INCREMENT 初时值 注意, 使用以下任意方法都会将现有数据删除. 方法一: delete from tb1; ALTER TABLE tbl AUTO_IN ...
- 关于MySQL的行转列的简单应用(二)---group函数
MySQL的行转列.列转行.连接字符串 concat.concat_ws.group_concat函数用法使用方法:CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串.如有任何一 ...
- mysql load数据第一列丢失
mysql load数据第一列丢失 问题描述 MySQL表的结构如下: mysql> desc cms_msg_test_3; +----------------+--------------- ...
- CSV文件插入到mysql表中指定列
参考资料: -CSV文件插入到mysql表中指定列
- mysql之行转列与列转行
mysql之行转列与列转行是数据查询的常见操作,以更好的来展示数据,下面就详细说说怎么实现. 行转列 行转列的话,就是将一条一条的行数据记录转换为一条列数据展示,一般来说是根据某一列来做汇总数据的操作 ...
随机推荐
- Android ADB常用命令使用
Android SDK: adb shell 命令的使用(am.pm.wm.screencap.monkey等) https://blog.csdn.net/xietansheng/article/d ...
- np.stack
- oracle系列九 SET运算符查询
将多个查询用 SET 操作符连接组成一个新的查询 UNION/UNION ALL INTERSECT MINUS 排序:ORDER BY UNION 操作符 UNION 操作符返回两个查询的结果集的并 ...
- 如何用谷歌浏览器导出一个https网站的数字证书
HTTPS加密是互联网安全建设的基础,百度.淘宝.天猫等越来越多互联网巨头启用全站HTTPS,也带动了更多网站加入HTTPS加密的行列.普通用户也逐渐明白HTTPS比HTTP更安全,访问网银.购物等重 ...
- [LeetCode] 273. Integer to English Words 整数转为英文单词
Convert a non-negative integer to its english words representation. Given input is guaranteed to be ...
- C# .NET 私钥 RSA2,SHA256,签名
私钥长度2048 -- /// <summary> /// 生成签名 /// </summary> /// <param name="str"> ...
- spring security进阶2 添加账户并对账户密码进行加密
目录 spring security 添加账户并对账户密码进行加密 一.原理分析 1.1加密原理 1.2加密后的登录过程 二.代码实现 2.1添加用户的页面如下, register.html 2.2c ...
- postgresql数据库中多个Schemas互相访问
背景: 用postgresql创建了一个数据库userDataBase,在这个数据库中创建了Schemas userA,Schemas userB,Schemas userC三个Schemas之后,给 ...
- LeetCode 506. 相对名次(Relative Ranks) 39
506. 相对名次 506. Relative Ranks 题目描述 给出 N 名运动员的成绩,找出他们的相对名次并授予前三名对应的奖牌.前三名运动员将会被分别授予"金牌",&qu ...
- WEB前后端分离开发中的验证与安全问题
登录验证以及安全问题: 1.请求接口全部用post方式,在后端判断请求方式是否为post 2.登录密码等敏感信息要加密后传输,如用RSA(支付宝里可下载公私钥生成工具),客户端公钥加密,传到服务器后再 ...