自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一行代碼實(shí)現(xiàn)Python連接所有數(shù)據(jù)庫(kù)做數(shù)據(jù)分析

新聞 前端
市面上比較常用的數(shù)據(jù)庫(kù)包括mysql, presto, hive, druid, kylin, spark, elasticsearch等,作為一名數(shù)據(jù)分析師,面對(duì)不同的數(shù)據(jù)庫(kù),是否有頭麻的情況。

 

市面上比較常用的數(shù)據(jù)庫(kù)包括mysql, presto, hive, druid, kylin, spark, elasticsearch等,作為一名數(shù)據(jù)分析師,面對(duì)不同的數(shù)據(jù)庫(kù),是否有頭麻的情況。別擔(dān)心,使用python連接以上數(shù)據(jù)庫(kù),你只需要一招,5行代碼即可。

對(duì)于大部分sqlboys和sqlgirls而言,只關(guān)心我的sql提交到以上數(shù)據(jù)庫(kù),返回給我一個(gè)pandas的dataframe即可。所以必要的輸入包括sql和數(shù)據(jù)庫(kù)連接信息(包括地址,port, 賬號(hào)密碼)即可。

  1. from sqlachemy import create_engine  
  2. import pandas as pd  
  3. # 數(shù)據(jù)庫(kù)連接地址 
  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)) 

更多數(shù)據(jù)庫(kù)連接方式:

數(shù)據(jù)庫(kù)

示例

Apache Druid

druid://<User>:<password>@<Host>:<Port-default-9088>/druid/v2/sql

Apache Hive

hive://hive@{hostname}:{port}/{database}

Apache Kylin

kylin://<username>:<password>@<hostname>:<port>/<project>?<param1>=<value1>&<param2>=<value2>

Apache Spark SQL

hive://hive@{hostname}:{port}/{database}

ClickHouse

clickhouse://{username}:{password}@{hostname}:{port}/{database}

ElasticSearch

elasticsearch+http://{user}:{password}@{host}:9200/

Presto

presto://{user}@{host}:{port}/{database}?source={source}

MySQL

mysql://<UserName>:<DBPassword>@<Database Host>/<Database Name>

基本上市面上所有的數(shù)據(jù)庫(kù),只要該數(shù)據(jù)庫(kù)支持sqlalchemy dialect和對(duì)應(yīng)的python driver,都可以按照上面的套路去無腦操作。簡(jiǎn)單省心。

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

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

 

 

責(zé)任編輯:張燕妮 來源: 今日頭條
相關(guān)推薦

2021-04-29 22:38:04

Python數(shù)據(jù)庫(kù)SQL

2022-07-14 10:06:19

代碼交叉表

2021-04-19 10:38:06

代碼開發(fā)工具

2009-12-11 13:43:55

PHP獲得所有數(shù)據(jù)庫(kù)

2022-06-17 09:21:53

Pandas代碼透視表

2022-04-09 09:11:33

Python

2017-07-06 15:44:33

2020-08-19 10:30:25

代碼Python多線程

2016-12-02 08:53:18

Python一行代碼

2024-11-20 07:00:00

代碼數(shù)據(jù)清洗Python

2009-07-20 14:30:38

jdbc連接數(shù)據(jù)庫(kù)代碼

2010-09-07 11:09:33

SQL語句

2017-02-09 15:46:09

數(shù)據(jù)分析互聯(lián)網(wǎng)

2010-09-03 13:40:24

SQL刪除

2020-05-15 15:09:51

R語言數(shù)據(jù)分析

2021-06-28 16:05:19

數(shù)據(jù)庫(kù)代碼技術(shù)

2015-09-25 09:25:34

數(shù)據(jù)分析

2021-06-30 13:45:49

SQL數(shù)據(jù)庫(kù)LSM

2023-11-24 08:47:36

ScipyPython

2021-05-11 20:46:17

Python代碼分類
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)