美文网首页
一、数据类型

一、数据类型

作者: 薛定谔的猫_1406 | 来源:发表于2018-06-19 11:06 被阅读0次

一、类型属性

1.1 UNSIGNED

mysql> create table t(
    -> a int unsigned,
    -> b int unsigned
    -> )Engine = InnoDb;
Query OK, 0 rows affected (0.37 sec)

mysql> insert into t values(1,2);
Query OK, 1 row affected (0.03 sec)

mysql> select a - b from t;
ERROR 1690 (22003): BIGINT UNSIGNED value is out of range in '(`test`.`t`.`a` -
`test`.`t`.`b`)'

在MySQL数据库中,对于UNSINGNED的操作,返回都是UNSINGNED。因此会返回错误

1.2 ZEROFILL:设定列的宽度,如果宽度小于设定的宽度,则自动填充0

mysql> alter table t change column a a int(4) unsigned zerofill;
Query OK, 0 rows affected (0.06 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> select * from t;
+------+------+
| a    | b    |
+------+------+
| 0001 |    2 |
+------+------+
1 row in set (0.00 sec)

二、日期和时间类型

日期类型

2.1 TIMESTAMP

datetime与timestamp显示的时候都是标准的"yyyy-MM-dd HH:MMSS"格式。但是有如下的不同。
建表时,timestamp可以设定一个默认值,而datetime不行;
在更新表时,可以设置timestamp类型的列自动更新为当前时间。

mysql> create table t3(
    -> a int,
    -> b timestamp default current_timestamp on update current_timestamp
    -> )engine = InnoDB;
Query OK, 0 rows affected (0.22 sec)

mysql> insert into t3(a) values(1);
Query OK, 1 row affected (0.04 sec)

mysql> select * from t3;
+------+---------------------+
| a    | b                   |
+------+---------------------+
|    1 | 2018-06-19 10:33:58 |
+------+---------------------+
1 row in set (0.00 sec)

2.2 与日期和时间相关的函数

1、返回当前时间

mysql> select now(),current_timestamp(),sysdate()\G;
*************************** 1. row ***************************
              now(): 2018-06-19 10:38:02
current_timestamp(): 2018-06-19 10:38:02
          sysdate(): 2018-06-19 10:38:02
1 row in set (0.01 sec)

2、时间加减函数

DATE_ADD(date,INTERVAL expr unit) -- 增加时间
DATE_SUB(date,INTERVAL expr unit) -- 减少时间

mysql> select now() as now,
    -> DATE_ADD(now(),INTERVAL 1 DAY) as tomorrow,
    -> DATE_SUB(now(),INTERVAL 1 DAY) as yesterday\G;
*************************** 1. row ***************************
      now: 2018-06-19 10:43:24
 tomorrow: 2018-06-20 10:43:24
yesterday: 2018-06-18 10:43:24
1 row in set (0.02 sec)

上面的例子中使用了DAY,还可以用其他的时间单位,例如MICROSECOND,SECOND,MINUTE,HOUR,WEEK,MONTH等类型
2、DATE_FORMAT函数:

mysql> select DATE_FORMAT(now(),'%Y%m%d') as datetime\G;
*************************** 1. row ***************************
datetime: 20180619
1 row in set (0.00 sec)

三、数字类型

整型

相关文章

  • php 数据类型和数据类型转化

    一、数据类型 基础数据类型 复合数据类型 特殊数据类型 二、获取数据类型 三、打印数据类型和值 四、数据类型判断 ...

  • iOS 数据类型简介及输出

    一、数据类型简介及输出 1.数据类型简介 数据类型简介 : Object - C 数据类型 分为 基本数据类型, ...

  • JavaScript原型与原型链

    一、数据类型JavaScript的数据类型可以分为基本数据类型和引用数据类型。 基本数据类型(6种)StringN...

  • JAVA 之路第一讲

    数据类型: 基础数据类型 包装器数据类型 引用数据类型 null 数据类型 基础数据类型: 整型 byte(字节型...

  • Java基础总结

    一、数据类型 在java中 的数据类型主要有两种数据类型①基本数据类型②引用数据类型 java中的八种基本数据类型...

  • Java基础数据类型和引用类型的区别

    一、数据类型 Java中的数据类型分为两大类,基本数据类型和引用数据类型。 1、基本数据类型 基本数据类型只有8种...

  • JavaScript进阶之:二、JS中的数据类型

    一、js中的数据类型:基本数据类型 和 复杂数据类型 基本(简单)数据类型:string ...

  • (二)JNI 的数据类型以及C访问Java属性和方法

    JNI 的数据类型 一、JNI 数据类型 Java基本数据类型与JNI数据类型的映射关系 Java引用数据类型与J...

  • js深度克隆

    在JAVAScript中数据类型分为两种,一种是原始数据类型,另外一种就是引用数据类型。 数据类型 原始数据类型:...

  • JS基础知识总结

    JS基础知识总结() 一、数据类型 五种基础数据类型,一种复杂数据类型 1、基础数据类型 又叫原始数据类型或者不可...

网友评论

      本文标题:一、数据类型

      本文链接:https://www.haomeiwen.com/subject/wokpeftx.html