shell中循环调用hive sql 脚本的方法

脚本tt.sh的内容如下:

#!/bin/bash

params=$1

for param in $params

do

echo $param

done

运行方式为:sh tt.sh "1 2 3 4 5"

输出为:

1

2

3

4

5

所以参考上面的命令,可以把hql的脚本写为如下方式,就可以循环执行sql:

功能:查找字符串 comments 中的param第一次出现的位置 ,返回的是位置数字

#!/bin/bash

params=$1

for param in $params

do

hive -e "insert overwrite local directory '/tmp/$param'

row format delimited fields terminated by '\t'

select locate('$param',comments) as position from tb_a;"

done

功能:查找评论中出现关键字的内容,没有关键词的内容过滤掉

#!/bin/bash

params=$1

for param in $params

do

hive -e "insert overwrite local directory '/tmp/$param'

row format delimited fields terminated by '\t'

select position from

(select locate('$param',comments) as position from tb_a where position != '0') a

where a.position !='0' ;"

done

以上这篇shell中循环调用hive sql 脚本的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

时间: 2018-06-18

如下所示: #!/usr/bin/bash HADOOP_HOME="/opt/module/cdh-5.3.6-ha/hadoop-2.5.0-cdh5.3.6" HIVE_HOME='/opt/module/cdh-5.3.6-ha/hive-0.13.1-cdh5.3.6' ####### execute hive ###### sql=$(cat <

本文研究的主要问题是python语言导出hive数据表的schema,分享了实现代码,具体如下. 为了避免运营提出无穷无尽的查询需求,我们决定将有查询价值的数据从mysql导入hive中,让他们使用HUE这个开源工具进行查询.想必他们对表结构不甚了解,还需要为之提供一个表结构说明,于是编写了一个脚本,从hive数据库中将每张表的字段即类型查询出来,代码如下: #coding=utf-8 import pyhs2 from xlwt import * hiveconn = pyhs2.connec

1.test.sh脚本内容如下: #!/bin/bash #CURR_DATE=`date +"%Y-%m-%d %H:%M:%S"`------>不能使用 v_sql="insert into origin_ennenergy_energytrade.test2 values('"$(date +"%Y-%m-%d %H:%M:%S")"','"Y"')" echo $v_sql #insert i

本文为大家分享了mysql 5.7 zip archive版本安装教程,供大家参考,具体内容如下 1.  从官网下载zip archive版本:官网地址 2. 解压缩至相应目录,并配置环境变量(将*\bin添加进path中): 3. (重要)在根目录新建my.ini文件,写入以下内容: [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] # 设置3306端口 port = 3306 # 设置mysql的安装目录 basedi

博主做过比较多项目的archive脚本编写,对于这种删除数据的脚本开发,肯定是一开始的话用最简单的一个delete语句,然后由于部分表数据量比较大啊,索引比较多啊,会发现删除数据很慢而且影响系统的正常使用.然后就对delete语句进行按均匀数据量分批delete的改写,这样的话,原来的删除一个表用一个语句,就可能变成几十行,如果archive的表有十几个甚至几十个,那我们的脚本篇幅就非常大了,增加了开发和维护的成本,不利于经验比较少的新入职同事去开发archive脚本,也容易把注意力分散到所谓分

实例代码: public function downLoad($dataUrl,$saveName) { $datalist = [ ROOT_PATH.'/public/introduce/110.docx', ROOT_PATH.'/public/upfile/110.zip' ]; // print_r($datalist);die; $filename = ROOT_PATH.'\public\/'.$saveName.'.zip'; if(file_exists($filename))

首先,公司的小组长给了我一个任务,把一个txt的文件中的部分内容,存进一个在hive中已有的表的相同结构的表中.所以我的流程主要有三个,首先,把数据处理成和hive中表相同结构的数据,然后仿照已有的hive中表的结构再创建一张新的数据表,最后把本地的txt文件上传到hive中新建的数据表中. 1:已有的数据表的结构和在hive表中的结构完全对不上,下面的图是原来hive中表的结构和小组长给我的txt中表的结构: 大家可以看出,我们原来的hive中表的字段一共有17个,而组长给我的表中的字段一共有

这篇文章主要介绍了如何在python中写hive脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.直接执行.sql脚本 import numpy as np import pandas as pd import lightgbm as lgb from pandas import DataFrame from sklearn.model_selection import train_test_split from io import St

本文为大家分享了mysql 5.7.18 Archive压缩版安装的具体方法,供大家参考,具体内容如下 文章参考: 5.7.17 winx64安装配置图文教程 mysql 5.7 zip archive版本安装教程 官网 进入 进入 往下滑: 解压: 设置环境变量:好像没用到这个环境变量(可以尝试不设置) 1) 2) 新建my.ini 初始化 注意:初始化只能一次,第二次执行mysqld –initialize会报错 初始化后找到mysql的密码: 输入密码是,黏贴:f6yL!frt>!wn 修

本文为大家分享了mysql 8.0.11压缩版安装教程,供大家参考,具体内容如下 1. MySQL解压与配置 下载:链接地址 解压:比如解压到D:\mysql 配置:配置系统环境变量,MYSQL_HOME=D:\mysql\mysql-8.0.11-winx64 path新增路径:%MYSQL_HOME%\bin,保存退出. 2. 文件配置 在解压根目录mysql-8.0.11-winx64下创建my.ini文件,新增内容如下: [mysqld] # 设置3306端口 port=3306 # 设

废话不多说了,直接给大家贴代码了,具体代码如下所示: #安装依赖包 yum search libaio # search for info yum install libaio # install library #新建用户组合用户 groupadd mysql useradd mysql -g mysql #解压到data下面 tar -zxvf /data/software/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /data #重命名 mv

本文为大家分享了mysql 8.0.12 解压版安装教程,供大家参考,具体内容如下 1.首先在官网上下载mysql8.0.12的压缩包:下载地址 2.下载成功后解压到任意目录,比如我的是E:\download\mysql-8.0.12-winx64: 3.配置环境变量,在系统变量path的末尾追加解压后的bin文件夹所在目录:E:\download\mysql-8.0.12-winx64\mysql-8.0.12-winx64; 4.以管理员身份运行cmd,如果不是管理员则不能注册mysql服务

下载mysql安装程序 官方下载地址:http://dev.mysql.com/downloads/mysql/ 解压下载文件,如图 其中data和my.ini文件需要自己创建 my.ini 文件配置如下: [client] port=3306 default-character-set=utf8 [mysqld] # 设置为自己MYSQL的安装目录 basedir=D:\mysql # 设置为MYSQL的数据目录 datadir=D:\mysql\data port=3306 characte

MySQL是一个小巧玲珑但功能强大的数据库,目前十分流行.但是官网给出的安装包有两种格式,一个是msi格式,一个是zip格式的.很多人下了zip格式的解压发现没有setup.exe,面对一堆文件一头雾水,不知如何安装.下面笔者将介绍如何解决此情况下安装过程中的各种问题. 比较简单的步骤: 在win2003及win2008 r2以上版本: 将下载下来的mysql解压到指定目录下(如:d:\mysql) 安装服务 在命令行输入 d:\mysql\bin\mysqld -install net sta

mysql5.7.17安装教程分享给大家,供大家参考,具体内容如下 从官网下载zip https://www.mysql.com/downloads/ 解压 D:\devtool\mysql-5.7.17-winx64\ 将  D:\devtool\mysql-5.7.17-winx64\bin  加入环境变量 在任务栏 windows图标上右键->命令提示符(管理员), 以管理员身份运行 cmd , cd 到D:\devtool\mysql-5.7.17-winx64\bin. 不以管理员运行

Mysql8.0.12解压版安装方法亲测,供大家参考 1.下载(官方推荐的是下载安装板,但是之前一直用,想试一下解压版,毕竟更简单嘛),下载地址 2.解压 这就是解压后的目录,但是我们需要在这个基础上做两步小操作 (1)创建一个名为data的文件夹 (2)创建一个名为my.ini的文件 3.修改my.ini文件 [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] # 设置3306端口 port = 3306 # 设置mysq

一.安装过程 MySQL 版本:5.7.18 1 .配置my.ini文件(简单的配置),放到MySQL的根目录下,此处的文件路径配置需要为绝对路径(使用反斜杠需要双拼,斜杠一个就可以了)(data文件夹不用自己创建,后面生成) [client] default-character-set=utf8 [mysqld] port=3306 character_set_server=utf8 basedir="D:\\mysql-5.7.18-winx64" datadir="D:

mysql 8.0.20 winx64.zip压缩版安装教程记录如下,分享给大家 1.下载 MySQL官网:链接 直接点击链接也可以下载:mysql 8.0.20 2.在F盘新建mysql目录,在mysql下新建MySQL文件夹,将压缩包解压到MySQL文件夹中. 3.在zip解压根目录下新建my.ini.(新建文本文档,并将后缀名改成.ini) 5.然后我们编辑my.ini,设置MySQL根目录,以及数据库数据存放的目录等. [mysqld] # 设置3306端口 port=3306 # 设置

hive sql 怎么实现循环_shell中循环调用hive sql 脚本的方法相关推荐

  1. centos定时运行python_CentOS中实现定时执行python脚本的方法

    CentOS中实现定时执行python脚本的方法 发布时间:2020-06-26 12:44:38 来源:亿速云 阅读:137 本篇文章给大家分享的是有关CentOS中实现定时执行python脚本的方 ...

  2. 【linux】Shell脚本中调用另外一个脚本的方法

    在Linux平台上开发,经常会在console(控制台)上执行另外一个脚本文件,经常用的方法有:./my.sh 或 source my.sh 或 . my.sh:这三种方法有什么不同呢?我们先来了解一 ...

  3. python在多继承中子类调用某个父类的同名方法之 super讲解(mro机制)***

    目录 2.   钻石继承遇到的难题 3.   针对钻石问题各语言的解决方法 3.1. C++ 3.2. Java 3.3. Ruby 3.4. Python 4.   super的内核:mro 5.  ...

  4. php循环输出sql数组吗,在PHP中循环SQL结果 – 没有获得整个数组

    我可能错过了一些简单的东西,但我似乎在这里被阻止了-我有一个带有两个表的MySQL数据库,每个表有几行.所以目标是查询数据库并在表中显示结果,所以我这样开始: $query ="SELECT ...

  5. csh for循环_shell中的for循环用法详解_linux shell

    这篇文章主要介绍了shell中的for循环用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 for 命令: for i i ...

  6. freemark循环map_freemarker中循环map根据key值得value 报错

    [#list uMap?keys as key] ${uMap[key]} [/#list] Map uMap = new HashMap(); uMap.put(1,"zhangsan&q ...

  7. python append函数 循环_Python中循环后使用list.append数据被覆盖问题的解决

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  8. pg数据库执行sql文件_在linux中Postgresql数据库如何执行脚本文件

    在linux中Postgresql数据库如何恢复数据库?执行sql脚本文件呢?具体步骤如下: 一.恢复数据库备份文件 1.将数据库备份文件xxx.backup用连接工具拷贝到/opt下,这个不固定,位 ...

  9. [转]将C#程序嵌入资源中(C# 调用嵌入资源的EXE文件方法)

    1. 我们有一个test.exe的WinForm程序,这是我们要加壳的目标程序. 2. 新建一个WinForm工程,删除Form1,然后新建一个类.如下. 3. 将test.exe 拷贝到该工程目录, ...

  10. 【我的OpenGL学习进阶之旅】解决关于在OpenGL ES开发中GLSurfaceView调用了onPause和onResume方法,然后息屏亮屏之后GLSurfaceView黑屏的问题

    目录 一.问题描述 二.分析问题 2.1 排查onPause和onResume方法 2.2 注释掉onPause和onResume方法 2.3 GLSurfaceView 关于Activity生命周期 ...

最新文章

  1. .net与数据库知识点
  2. c++ 取成员函数地址_c及c++指针及引用简单解释(自学学习心得)
  3. keycode值对照表_JavaScript中键盘字母与keyCode值(键值)的对照表
  4. UBUNTU衍生版制作,系统的封装
  5. 推荐一个很牛逼的 Github 项目:本人历时半年完成的【Java 面试 + Java 后端技术学习指南】,已拿大厂offer
  6. C++中的类所占内存空间总结
  7. Java防止用户同一时间重复登录(包括异地登录)
  8. C#中相同不同程序集存在相同的命名空间的时候的冲突解决办法
  9. python转json到excel_【Python】EXCEL转Json
  10. matlab电力模块,基于MATLAB中电力系统模块集(PSB的电力系统仿真研究
  11. 游戏框架(框架入门篇)
  12. 常用函数的幂级数展开式
  13. 沁恒微USB蓝牙单片机CH573F初步熟悉
  14. java随机生成三位数
  15. CentOS等保三级安全加固方案
  16. 灰狼优化算法--简单易懂附python代码
  17. POSCMS 邮件服务器配置
  18. 诺亚方舟售票系统V4版本了
  19. 实战开发:新手小白如何用C++制作经典网游DNF
  20. 后端技术精选 - 收藏集 - 掘金

热门文章

  1. 聊一聊2D地图的迷雾效果
  2. XCode插件因为升级不能用了怎么办?几个步骤教你搞定
  3. 手动安装Apache+PHP+MYSQL及环境配置
  4. avascript 运动中Offset的bug解决方案
  5. iOS网络请求之multipart/form-data提交数据
  6. BizTalk 2002:Registering Custom Components
  7. 华为非对等通信小实验
  8. HCIE-Security Day29:IPSec:实验(四)总部与分支机构之间建立IPSec PN(采用策略模板方式,总部采用固定IP)
  9. Security+ 学习笔记27 灾后恢复
  10. WLAN射频、信道与帧分类