Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save rysk92/759643 to your computer and use it in GitHub Desktop.
Save rysk92/759643 to your computer and use it in GitHub Desktop.
import MySQLdb
import datetime
def row_count(table_name):
global g_cur
g_cur.execute('select count(*) from ' + table_name)
one = g_cur.fetchone()
return one[0]
def is_exist_created_at_column(table_name):
global g_cur
global g_dbname
sql = "SELECT count(*) FROM information_schema.columns WHERE table_schema = '" + g_dbname + "' AND table_name = '" + table_name + "' AND COLUMN_NAME = 'created_at'"
g_cur.execute(sql)
one = g_cur.fetchone()
return one[0]
def row_zoukaryo(table_name):
global g_cur
global g_start_date
global g_end_date
sql = "select count(*) from " + table_name + " where created_at > \'" + g_start_date + "' AND created_at < '" + g_end_date + "'"
g_cur.execute(sql)
one = g_cur.fetchone()
return one[0]
g_dbname = ""
g_unix_socket = ""
g_start_date = "2010-08-11 00:00:00"
g_end_date = "2010-08-18 00:00:00"
g_connect = MySQLdb.connect(user="", passwd="", db=g_dbname, host="", charset="utf8", unix_socket="")
g_cur = g_connect.cursor()
print g_start_date + "から" + g_end_date + "の間のデータ"
d = datetime.datetime.today()
print "テーブル名,",
print d.strftime("%Y-%m-%d %H:%M:%S") + "時点の総レコード数,",
print g_start_date + "から" + g_end_date + "の間の総増加レコード数,",
print g_start_date + "から" + g_end_date + "の間の1日平均増加レコード数"
g_cur.execute('show tables')
tables = g_cur.fetchall()
for table_name in tables:
print table_name[0] + ',',
row_c = row_count(table_name[0])
print str(row_c) + ',',
if( is_exist_created_at_column(table_name[0]) ):
row_z = row_zoukaryo(table_name[0])
print str(row_z) + ',',
print str(row_z / 7)
else:
print ','
g_connect.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment