欢迎投稿

今日深度:

一行代码实现Python连接所有数据库做数据分析,

一行代码实现Python连接所有数据库做数据分析,


 

对于大部分sqlboys和sqlgirls而言,只关心我的sql提交到以上数据库,返回给我一个pandas的dataframe即可。所以必要的输入包括sql和数据库连接信息(包括地址,port, 账号密码)即可。

  1. from sqlachemy import create_engine  
  2. import pandas as pd  
  3. # 数据库连接地址 
  4. engine = create_engine("mysql://root:123456@127.0.0.1:3306/database") 
  5. # 用户要查询的sql  
  6. sql = "select * from users limit 10" 
  7. df = pd.read_sql_query(sql, engine) 

presto

  1. # presto 
  2. uri = "presto://username:password@127.0.0.1:8080/database?source=pyhive" 
  3. sql = "select * from users limit 10" 
  4. df = pd.read_sql_query(sql, create_engine(uri)) 

mysql

  1. # mysql 
  2. uri = "mysql://root:123456@127.0.0.1:3306/database" 
  3. sql = "select * from users limit 10" 
  4. df = pd.read_sql_query(sql, create_engine(uri)) 

druid

  1. # druid 
  2. uri = "druid://<User>:<password>@<Host>:<Port-default-9088>/druid/v2/sql" 
  3. sql = "select count(*) from users where _time> TIME_SHIFT...." 
  4. df = pd.read_sql_query(sql, create_engine(uri)) 

更多数据库连接方式:

基本上市面上所有的数据库,只要该数据库支持sqlalchemy dialect和对应的python driver,都可以按照上面的套路去无脑操作。简单省心。

核心只需要一行代码即可:

  1. df = pd.read_sql_query(sql, create_engine(uri)) 

www.htsjk.Com true http://www.htsjk.com/shujukunews/43567.html NewsArticle 一行代码实现Python连接所有数据库做数据分析, 对于大部分sqlboys和sqlgirls而言,只关心我的sql提交到以上数据库,返回给我一个pandas的dataframe即可。所以必要的输入包括sql和数据库连接...
评论暂时关闭