美文网首页
用python脚本来提高工作效率

用python脚本来提高工作效率

作者: 鬼宇书生 | 来源:发表于2018-09-27 22:41 被阅读0次

作为一名数据分析师,日报、周报、月报数据一个也不能少。 相应的, 就要在数据库中提取大量的数据, 并处理大量的Excel表格。

自己在工作中使用的最多的就是Hive-SQL查询语句,很多时候,每天的运行的SQL语句只需要改个日期即可。 但如果你每一天都要对每条SQL语句改日期, 然后再把每条SQL语句粘贴到数据库中跑的话, 会特别的费时耗力。 我们可以写个简单的Python脚本, 这样每次运行前只需要改一次日期,就可以将所有SQL语句运行一遍, 大大提高工作效率。

1. 首先, 用Python连接数据库

对于数据库的ip地址,用户名,密码等, 如果不清楚,或数据库连接不上, 需要和开发人员对接

from pyhive import hive 

import time

conn = hive.Connection(host='ip地址', port=10000, username='用户名', database = 'default', auth='NOSASL')

cursor = conn.cursor()

2. 设置开始和结束时间

这样只要sql语句不变, 我们跑sql时, 只需要改日期即可。

startdate = '2018-09-01'
enddate   = '2018-09-19'

3. 用Python中的format函数将日期传入{}中

  • python中写sql脚本时, 需要用\来进行换行符的转换, \后面不能有空格。

  • 日期用两个{}来代替, 用format函数将开始日期与结束日期传入

# 提取积分类uv,pv数据

sql_jifenxinxi_an = 'select \
    count(distinct user_account) as uv, \
    count(1) as pv \
from \
    computer_view.client_android_log_view \
where \
    hit_date between "{}" and "{}" \
    and \
    (btn_position like "服务-查询-积分信息%" \
    or \
    btn_home = "积分-扇形左" \
    ) \
limit 1000'.format(startdate,enddate)

cursor.execute(sql_jifenxinxi_an)
print(cursor.fetchall())



我们可以按照这个格式写工作中需要运行的多个SQL语句。 这样, 当脚本运行的时候, 我们可以腾出时间来去干其他工作, 等过一段时间,所有的SQL语句都跑完了, 我们再进行统一的整理。

相关文章

  • 用python脚本来提高工作效率

    作为一名数据分析师,日报、周报、月报数据一个也不能少。 相应的, 就要在数据库中提取大量的数据, 并处理大量的Ex...

  • Python开发桌面软件文档及网址管理工具,强迫症的福音

    写在前面 这两天用python鼓捣开发了一个软件,分享给同事,觉得很实用,可以大大提高工作效率,想通过平台分享出来...

  • 用python脚本生成固定结构的OC代码

    用fastlane来进行管理代码如下 用python脚本来实现固定结构的OC代码 在终端切换到fastlane的父...

  • 用脚投票

    东北经济衰败是东北人用脚投票的结果。东北人不爱东北是东北走向没落的真正原因。

  • 用脚吃饭

  • 用脚投票

    一个人必须要有他的责任,如果他不承担责任那如何取得他人的信任?一个公司如果没有完善的制度来保障员工的权益,那这样...

  • 用脚思考

    在股市里,要用脚去思考,因为任何买入行为都要承担风险,需要靠精确计算才能算得出的利润是不值得去冒险的,只有用脚都能...

  • 用脚说话

    最近听到一则故事,说一次警方进行例行检查,在一个叫高木的男子家中,意外发现一位被“囚禁”的女孩。这女孩大概受了不小...

  • 用脚投票

    网银的K宝过期了,提示要去柜面办理。进银行问客服,客服在忙,回自动柜员机上试试,不一定行。好不容易排到试了下没成功...

  • 用脚说话

    但凡人们争相逃离的地方,不是地狱也是离地狱很近。 相反,凡是人们竞相向往的地方,不一定是天堂,但肯定是离天堂最近。

网友评论

      本文标题:用python脚本来提高工作效率

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