#!/Users/zuojingang/python_venv/bin/python3.6
# -*- coding: UTF-8 -*-
import pymysql
import sys
import time
import os
from datetime import timedelta,datetime
#连接数据库
connect = pymysql.connect(host='', port=, user='', password='!', db='', charset='utf8', cursorclass=pymysql.cursors.DictCursor)
#创建游标
_cursor = connect.cursor()
base_dir = '/Users/zuojingang/file/file_user_90/'
print('base_dir=' + base_dir)
result_dir = base_dir + time.strftime('%Y-%m-%d') + '/'
if not os.path.exists(result_dir) or not os.path.isdir(result_dir):
os.makedirs(result_dir)
file_path = result_dir + 'file_user_90.csv'
if os.path.exists(file_path):
os.remove(file_path)
class Process:
file_user_90 = open(file_path, 'a')
@classmethod
def init(_cls):
file_user_90_header = 'c_header1, c_header2\n'
_cls.file_user_90.write(file_user_90_header)
@classmethod
def destory(_cls):
_cls.file_user_90.close()
@classmethod
def toProcess(_cls, part_i):
'''
def a method to process the part
'''
#执行数据查询
sql = 'select user_id, remain from table_test order by user_id asc limit {},10000'
_sql = sql.format(part_i)
print('sql=' + _sql)
_cursor.execute(_sql)
sql_result = _cursor.fetchall()
result_str = ''
for _dict in sql_result:
result_str += _dict.get('user_id') + ',' + str(_dict.get('remain') + '\n'
print(result_str)
_cls.file_user_90.write(result_str)
Process.init()
_datetime = now() - timedelta(days=90)
#执行数据查询
sql = 'select count(*) as cnt from table_test where last_modified_time<{}'
_sql = sql.format(_datetime)
print('sql=' + _sql)
_cursor.execute(_sql)
sql_result = _cursor.fetchone()
print(str(sql_result))
# from dateutil.relativedelta import relativedelta
# s_time = datetime.strptime('2015-01-01 00:00:00', '%Y-%m-%d %H:%M:%S')
# for i in range(45):
# _datetime_s = s_time + relativedelta(months=i)
# _datetime_e = s_time + relativedelta(months=(i+1))
# Process.toProcess(_datetime_s, _datetime_e)
for i in range(sql_result[cnt]/10000):
Process.toProcess(i)
Process.destory()
sys.exit(0)
python3数据统计模版-mysql
猜你喜欢
转载自blog.csdn.net/u010746357/article/details/80661992
今日推荐
周排行