数据库
abc200941410128
这个作者很懒,什么都没留下…
展开
-
hive计算周几函数遇见的结果差1的问题(DATEDIFF和pmod)
因公司的hive版本较低,不支持计算周几的函数dayofweek。只能用pmod(datediff(‘2020-09-17’, ‘1920-01-01’) -3, 7)来计算周几。但是后面发现与pmod(datediff(to_date(‘2020-09-17’), ‘1920-01-01’) -3, 7)返回结果不一致,然后就进行了一些 探索(注,CURRENT_DATE和current_timestamp 是9.17做的)select -- 日期和时间形式的字符串 pmod(原创 2020-09-18 19:20:36 · 1664 阅读 · 1 评论 -
在数据库处理中数字与字符串之间比较的坑(hive VS mysql )
数字与字符串之间比较的坑(hive&mysql )背景MySQLhive背景在工作中遇到了同样的SQL在hive和MySQL执行后所得总数对不上,但是抽样执行都是一致的。最后发现问题出在hive和MySQL在数字和字符串比较时是不一样的。MySQL在MySQL中,字符串和数字比较是自动转化为数字,如果开头没有数字就转化为0:字符串(数值)与数值比较 ,与数值比较没有差别:m...原创 2019-11-11 20:26:16 · 7276 阅读 · 0 评论 -
数据库间数据迁移常见工具和方法
项目需要对oracle数据迁移到MySQL中,搜集了一些方法和工具,现在做一个汇总和总结,较好的有以下几种:1、SQLyog(https://link.zhihu.com/?target=https%3A//www.webyog.com/product/sqlyog)SQLyog是世界著名的Webyog公司出品的一款简洁高效、功能强大的图形化MySQL数据库管理工具。使用SQLyog,可以原创 2017-07-25 23:17:44 · 16429 阅读 · 1 评论 -
MySQL数据库与其他数据库的3个常用语法区别(外链接、分组排序row_number() over(partition by ) 、group by和distinct)
MySQL的小巧灵活易用性,和开源性,使得应用面非常广,但是缺点也 比较多,一些常用的sql语句也有差别。以前也遇到过,最近做项目又有体会,还是记录下来省的以后又忘记了。1、MySQL数据库不支持最常用的外全链接,即无FULL JOIN。只有内连接、左外和右外链接。这个就非常不方便了。一般是通过union all 来实现由左外+右外的null部分或者左null+右外实现。几种具体形象的解释见下原创 2017-06-16 10:25:18 · 4797 阅读 · 1 评论 -
Hive基础sql语法
1.DDL 操作1.建表2.3.创建简单表4.创建外部表5.建分区表6.建Bucket表7.创建表并创建索引字段ds8.复制一个空表9.显示所有表10.按正条件正则表达式显示表11.修改表结构12.表添加一列 13.添加一列并增加列字段注释14.更改表名15.删除列16.增加删除分区17.重命名表18.修改列的名字类型位置注释19.表添加一列 20.添加一列并转载 2017-08-03 10:53:14 · 2703 阅读 · 0 评论 -
hive表复制和HDFS回收站清除
hive表复制1、非分区表的复制create table t_copy as select * from t_temp;跟一般sql语句一样。2、分区表的复制先复制源表的表结构create table t_copy like t_part;再插入分区数据,如:insert overwrite table t_copy partition(year,month)select id,name,o原创 2017-12-11 10:34:22 · 8510 阅读 · 0 评论 -
python导数据到mysql报错OperationalError: (2006, 'MySQL server has gone away')
报错内容: OperationalError: (2006, ‘MySQL server has gone away’)报错原因:导入的数据超过单次的默认量。即超过 max_allowed_packet。参数值解决办法:1、修改语句,分批导入; 2、调整参数:#查看默认参数值mysql> show global variables like 'max_allowed_pac...原创 2018-05-04 18:34:10 · 5332 阅读 · 0 评论 -
python导数据到mysql报错OperationalError: (2013, 'Lost connection to MySQL server during query')
一、问题描述 用密码都是可以连接的。之前也是可以连接mysql,突然在大数据量的操作时就报错了。 这个原因很难说,我的原因是协议优先级的问题,也是数据大的问题。 二、解决方法 打开cmd,输入ping localhost 显示的一个【::1】在传输数据。这是因为你的电脑优先使用了ipv6来解析localhost。只有用ipv4的时候才会解析到127.0.0.1上去。 解决办法: ...原创 2018-05-16 19:08:27 · 16358 阅读 · 2 评论