hive学习笔记之一:基本数据类型(1)

  • 通过思维导图来分类和理解:
    • 下面通过列表说明所有的基本数据类型:

      | 类型 | 描述 | 示例 |

      | — | — | — |

      | BOOLEAN | true/false | TRUE |

      | TINYINT | 1字节有符号整数,从-128到127 | 1Y |

      | SMALLINT | 2字节有符号整数,从-32768到32767 | 1S |

      | INT | 4字节有符号整数,从-2147483648到2147483647 | 1 |

      | BIGINT | 8字节有符号整数,

      从-9223372036854775808到9223372036854775807 | 1L |

      | FLOAT | 4字节单精度浮点数 | 1.0 |

      | DOUBLE | 8字节(64位)双精度浮点数 | 1.0 |

      | DECIMAL | 任意精度有符号小数 | 1.0 |

      | STRING | 无上限可变长度字符串 | ‘a’, “a” |

      | VARCHAR | 可变长度字符串 | ‘a’, “a” |

      | CHAR | 固定长度字符串 | ‘a’, “a” |

      | BINARY | 字节数组 | - |

      | TIMESTAMP | 精度到纳秒的时间戳 | ‘2020-03-01 00:00:00’ |

      | DATE | 日期 | ‘2020-01-01’ |

      关于三种字符串类型

      1. STRING,变长,无需最大长度声明,理论上能存储2GB字符;

      2. VARCHAR,变长,需要声明最大长度(1到65535之间),例如VARCHAR(100);

      3. CHAR,定长,如CHAR(100);

      常用类型综合实战

      1. 启动hive,进入交互模式,执行以下语句建表,字段类型是常用的几种:

      create table t1(

      int_field INT,

      string_field STRING,

      boolean_field BOOLEAN,

      date_field DATE,

      timestamp_field TIMESTAMP

      )

      ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’

      STORED AS TEXTFILE;

      1. 用insert语句新增一条记录:

      insert into t1

      values

      (101, ‘a101’, true, ‘2020-01-01’, ‘2020-03-01 00:00:00’);

      1. 使用函数,在新增的记录的时候,将timestamp_field字段设置为当前时间,注意和前面的insert语句比较一下,使用函数时必须用到select XXX from XXX limit 1这样的语法:

      insert into t1

      select

      103, ‘a103’, true, ‘2020-01-01’, current_timestamp()

      from t1 limit 1;

      1. 看一下新增的两条记录:

      hive> select * from t1;

      OK

      101 a101 true 2020-01-01 2020-03-01 00:00:00

      103 a103 true 2020-01-01 2020-10-27 20:42:35.729

      Time taken: 0.062 seconds, Fetched: 2 row(s)

      1. 查看当前时间:

      select unix_timestamp();

      响应:

      hive> select unix_timestamp();

      OK

      1603802631

      Time taken: 0.028 seconds, Fetched: 1 row(s)

      1. 将DATE字段转为TIMESTAMP:

      select cast(date_field as timestamp) from t1;

      响应:

      hive> select cast(date_field as timestamp) from t1;

      OK

      2020-01-01 00:00:00

      2020-01-01 00:00:00

      Time taken: 0.051 seconds, Fetched: 2 row(s)

      1. 将TIMESTAMP字段转为DATE:

      select to_date(timestamp_field) from t1;

      响应:

      hive> select to_date(timestamp_field) from t1;

      OK

      2020-03-01

      2020-10-27

      Time taken: 0.063 seconds, Fetched: 2 row(s)

      1. 将TIMESTAMP字段转为BIGINT:

      select to_date(timestamp_field) from t1;

      响应:

      自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

      深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

      因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

      既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

      由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

      如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

      最后总结

      ActiveMQ+Kafka+RabbitMQ学习笔记PDF

      • RabbitMQ实战指南

        • 手写RocketMQ笔记

          • 手写“Kafka笔记”

            关于分布式,限流+缓存+缓存,这三大技术(包含:ZooKeeper+Nginx+MongoDB+memcached+Redis+ActiveMQ+Kafka+RabbitMQ)等等。这些相关的面试也好,还有手写以及学习的笔记PDF,都是啃透分布式技术必不可少的宝藏。以上的每一个专题每一个小分类都有相关的介绍,并且小编也已经将其整理成PDF啦

            《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

            nMhilL-1713383222601)]

            关于分布式,限流+缓存+缓存,这三大技术(包含:ZooKeeper+Nginx+MongoDB+memcached+Redis+ActiveMQ+Kafka+RabbitMQ)等等。这些相关的面试也好,还有手写以及学习的笔记PDF,都是啃透分布式技术必不可少的宝藏。以上的每一个专题每一个小分类都有相关的介绍,并且小编也已经将其整理成PDF啦

            《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!