SQL技巧分享 2018-08-09

以下SQL技巧为最近一周最新掌握的,记录下来以便后期使用。

1、随机抽样数据

HIVE SQL实现:

MSSQL T-SQL实现:

注意,T-SQL虽然也有rand()函数,生成的也是随机数,但在此并不适用,区别是rand()只生成一个随机数,而newid()是为每一列生成一个随机数。

2、HIVE分批查询数据

在MySQL中,想要分批查询数据只要使用limit的offset即可,但是在HIVE中,并没有offset的支持解决方案为使用ROW_NUMBER()生成新列后通过子查询进行限制:

3、HIVE不支持笛卡儿积查询的解决办法

报错内容为:ERROR : Error while compiling statement: FAILED: SemanticException [Error 10052]: In strict mode, cartesian product is not allowed. If you really want to perform the operation, set hive.mapred.mode=nonstrict

解决方案,将原来的:

修改为:

4、使用SQL计算Z-SCORE分值

5、使用order by 时无法使用UNION ALL的问题

解决方案时使用子查询,示例:

打赏作者
微信支付标点符 wechat qrcode
支付宝标点符 alipay qrcode

Docker容器内多用户版JupyterHub支持GPU

前一篇文章介绍了Docker下安装多用户版的JupyterHub,但安装完毕后会遇到一个问题:Docker内无

使用Docker安装多用户版的JupyterHub

宿主服务器使用的是Ubuntu 18.04,需要注意的是Docker目前不支持Ubuntu 19.10。如要在

使用tqdm显示Python代码执行进度

在使用Python执行一些比较耗时的操作时,为了方便观察进度,通常使用进度条的方式来可视化呈现。Python中

发表评论

电子邮件地址不会被公开。 必填项已用*标注