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之行转列与列转行是数据查询的常见操作,以更好的来展示数据,下面就详细说说怎么实现. 行转列 行转列的话,就是将一条一条的行数据记录转换为一条列数据展示,一般来说是根据某一列来做汇总数据的操作 ...
随机推荐
- CocosCreator之打包android
1:准备资料 1:sdk,下载地址http://www.androiddevtools.cn/ 2:jdk下载地址http://www.oracle.com/technetwork/Java/java ...
- linux命令(11)环境变量:查看和添加环境变量
linux 环境变量系统: 系统级别:/etc/profile./etc/bashrc/ ./etc/environment 用户级别:~/.profile.~/.bashrc. ~/.bash_pr ...
- C#中 ??、 ?、 ?: 、?.、?[ ] 问号
1. 可空类型修饰符(?) 引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空.例如:string str=null; 是正确的,int i=null; 编译器就会报错.为了使值类型也 ...
- ubuntu 18.04屏幕共享 -------(转载) ( Windows远程登录Ubuntu )
原文地址: https://my.oschina.net/michaelshu/blog/3018932 ----------------------------------------------- ...
- windows10 卓越性能模式
打开cmd,输入 powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61 再到电池选项里,勾选卓越性能模式 若没出现卓越性能,创建 ...
- preg_match 第三个参数,
//请修改变量p的正则表达式,使他能够匹配str中的姓名 $p = '/name:([\w\s]+)/'; $str = "name:steven jobs"; preg_matc ...
- C# EF6框架连接postgresql数据库
https://blog.csdn.net/jwdym01/article/details/102845602
- ztree实现拖拽移动和复制
1.官网下载ztree:http://www.treejs.cn/v3/api.php 2.引入jquery.ztree.all.min.js 注意,这是基于jQuery的插件,请引入相关js 3.设 ...
- leetcode 55 Jump Game 三种方法,回溯、动态规划、贪心
Given an array of non-negative integers, you are initially positioned at the first index of the arra ...
- QT QML 在qml中自定义信号
服从真理,就能征服一切事物. -- 塞涅卡 实例: 自定义文件 MoveYou.qml: import QtQuick 2.5 import QtQuick.Controls 1.4 import Q ...