# coding:utf-8

# Created by qinlin.liu at 2017/3/14

import pymysql

import datetime

#pymongo说明文档  : http://api.mongodb.com/python/current/api/pymongo/collection.html

#from pymongo import MongoClient

config = {

"mysql_110": {

"host": "172.18.28.110",

"port":3306,

"user": "reader",

"password": "reader",

"db": "pgenius",

"charset":"utf8"

},

"mongodb_nomal":{

"host": "172.18.135.30",

"replicaset": "athena",

}

}

#连接mysql

mysql_conn=pymysql.connect(**config["mysql_110"])

sql="""

SELECT

SEQ

,STOCKCODE

,CTIME

,MTIME

,TRADEDATE

FROM PGENIUS.QW_STK_TRD_STAT

WHERE TRADEDATE=(SELECT MAX(TRADEDATE) FROM PGENIUS.QW_STK_TRD_STAT)

LIMIT 41

"""

#执行sql

cursor=mysql_conn.cursor()

cursor.execute(sql)

#获取所有查询结果

datas=cursor.fetchall()

print(datas)

ds=[]

for i in datas:

#print(list(i))

#print({"SEQ":i[0],"STOCKCODE":i[1],"CTIME":str(i[2]),"MTIME":str(i[3]),"TRADEDATE":i[4]})

ds.append({"SEQ":i[0],"STOCKCODE":i[1],"CTIME":str(i[2]),"MTIME":str(i[3]),"TRADEDATE":i[4]})

#连接mongo

from pymongo import MongoClient

#mongo_conn=MongoClient(host="172.18.3.130",port=27017,tz_aware=False,uri="mongodb://z3dbusadmin:z3dbusadmin@117.121.98.91:27017/z3dbus?authMechanism=SCRAM-SHA-1")

mongo_conn =MongoClient(**config["mongodb_nomal"])

db=mongo_conn["base"]

account=db["TEST_TIME_WL"]

#print(list(coll.find({"FUNDCODE":"510050"})))

#写入数据

for i in datas:

print(list(i))

print({"SEQ":i[0],"STOCKCODE":i[1],"CTIME":str(i[2]),"MTIME":str(i[3]),"TRADEDATE":i[4]})

account.insert({"SEQ":i[0],"STOCKCODE":i[1],"CTIME":i[2],"MTIME":i[3],"TRADEDATE":i[4]})

'''((22430821, 'QWIN11', datetime.datetime(2017, 6, 1, 10, 8, 41), datetime.datetime(2017, 6, 1, 10, 8, 41), 20170601)

, (22434141, 'QWIN11', datetime.datetime(2017, 6, 1, 10, 34, 43), datetime.datetime(2017, 6, 1, 10, 34, 43), 20170601), (22437461, 'QWIN11', datetime.datetime(2017, 6, 1, 11, 5, 31), datetime.datetime(2017, 6, 1, 11, 5, 31), 20170601), (22440781, 'QWIN11', datetime.datetime(2017, 6, 1, 11, 38, 22), datetime.datetime(2017, 6, 1, 11, 38, 22), 20170601), (22427579, '600000', datetime.datetime(2017, 6, 1, 10, 8, 41), datetime.datetime(2017, 6, 1, 10, 8, 41), 20170601), (22430899, '600000', datetime.datetime(2017, 6, 1, 10, 34, 43), datetime.datetime(2017, 6, 1, 10, 34, 43), 20170601), (22434219, '600000', datetime.datetime(2017, 6, 1, 11, 5, 31), datetime.datetime(2017, 6, 1, 11, 5, 31), 20170601), (22437539, '600000', datetime.datetime(2017, 6, 1, 11, 38, 22), datetime.datetime(2017, 6, 1, 11, 38, 22), 20170601), (22427580, '600004',

'''

从mysql读取数据写入mongo的更多相关文章

  1. PHP MySQL 读取数据

    PHP MySQL 读取数据 从 MySQL 数据库读取数据 SELECT 语句用于从数据表中读取数据: SELECT column_name(s) FROM table_name 如需学习更多关于 ...

  2. 关于使用Binlog和canal来对MySQL的数据写入进行监控

    先说下Binlog和canal是什么吧. 1.Binlog是mysql数据库的操作日志,当有发生增删改查操作时,就会在data目录下生成一个log文件,形如mysql-bin.000001,mysql ...

  3. Redis 中文入库成功,读取数据写入文件乱码问题

    近期须要用到redis ,可是在编码这个问题上,纠结了非常久.        需求 :每天一个进程将中文文件入库到redis中(不定时更新) ,另外几个进程读取redis中的信息 ,并处理数据结果.使 ...

  4. 《程序实现》从xml、txt文件里读取数据写入excel表格

    直接上码 import java.io.BufferedReader; import java.io.DataInputStream; import java.io.File; import java ...

  5. Flink 使用(一)——从kafka中读取数据写入到HBASE中

    1.前言 本文是在<如何计算实时热门商品>[1]一文上做的扩展,仅在功能上验证了利用Flink消费Kafka数据,把处理后的数据写入到HBase的流程,其具体性能未做调优.此外,文中并未就 ...

  6. 用kettle从mysql中使用存储过程读取数据写入到sqlserver数据库

    1.mysql存储过程,可以实现动态表读取,满足较为复杂的业务逻辑 DROP PROCEDURE if exists p_get_car_trace; delimiter // CREATE PROC ...

  7. C#操作mysql数据库,往mysql读取或者写入数据

    最近在开发的一个项目,需要将数据存贮在mysql数据库中,于是需要写一个操作mysql的帮助类,我采用的是官方的,还是先给出一个链接,后面有时间的话,继续更新. http://blog.csdn.ne ...

  8. Python将MySQL表数据写入excel

    背景:将mysql表查询结果写入excel. 1.使用sqlyog工具将查询结果导出到Excel.xml中,用excel打开发现:因为text字段中有回车换行操作,显示结果行是乱的. 2.用mysql ...

  9. java读取数据写入txt文件并将读取txt文件写入另外一个表

    package com.xsw.test; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.F ...

随机推荐

  1. mysql索引优化比普通查询速度快多少

    mysql索引优化比普通查询速度快多少 一.总结 一句话总结:普通查询全表查询,速度较慢,索引优化的话拿空间换时间,一针见血,所以速度要快很多. 索引优化快很多 空间换时间 1.软件层面优化数据库查询 ...

  2. (转)c# 扩展方法

    扩展方法能够向现有类型“添加”方法,而无需创建新的派生类型,重新编译或以其他方式修改原始类型.扩展方法必须是静态方法,可以像实例方法一样进行调用.且调用同名中实际定义的方法优先级要高于扩展方法. 先来 ...

  3. Spring Boot设置值:分别用@ConfigurationProperties和@Value给属性设值及其区别

    @ConfigurationProperties给属性映射值编写JavaBean/** 将配置文件application.properties中配置的每一个属性值映射到当前类的属性中:* @Confi ...

  4. Backup and Recovery Types

    Physical(Raw) and Logical Backup: 1.Physical backups consist of raw copies of the directories and fi ...

  5. Getting started with Processing 第十一章——数组

    Getting started with Processing 第十一章——数组 从变量到数组: 使用数组,无需为每一个变量创建一个新的名称/这让代码变得更短,更容易理解,更方便更新. 创建数组的三个 ...

  6. 使用absolute布局

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. apiCloud 版本号

    应用版本号:this.appVersion = api.appVersion; 更新系版本的时候可用来比较

  8. Sereja and Two Sequences CodeForces - 425C (dp)

    大意: 给定序列$a,b$, 每次可以任取两个相同大小的$a_i,b_j$删除$a_i,b_j$左侧所有元素, 花费为e, 得分1, 最后结束时必须再花费之前删除元素的个数, 不得分. 初始能量$s$ ...

  9. object对象转string字符串

    var obj = {}; obj=new Array; obj.name='小王'; obj.sex='男'; var str=JSON.string(obj)

  10. echarts3使用总结2

    接着上一篇文章补充一点项目中遇到的问题及解决方法 1.y轴正负轴调换  yAxis: {     inverse: false,  //y轴正负轴调换 }, 2.去掉图表背景线 yAxis: [   ...