加入收藏 | 设为首页 | 会员中心 | 我要投稿 我爱制作网_池州站长网 (https://www.0566zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Python操作Mysql数据库入门——数据导入pandas(数据分析准备)

发布时间:2022-09-17 15:33:06 所属栏目:MySql教程 来源:
导读:  还讲到了一些基础的面向对象设计

  这两天探索了一下,发现如果是用pandas做数据分析

  简单的几行代码即可将mysql的数据导入pandas进行分析

  前文传送门:Python操作Mysql数据库入门—
  还讲到了一些基础的面向对象设计
 
  这两天探索了一下,发现如果是用pandas做数据分析
 
  简单的几行代码即可将mysql的数据导入pandas进行分析
 
  前文传送门:Python操作Mysql数据库入门——查看和增加记录
 
  环境
 
  Python 3.X
 
  IDE : juyter notebook
 
  使用Python连接数据库
 
  import MySQLdb
  import pandas as pd
  #使用python连接数据库
  conn = MySQLdb.connect(
      host = '127.0.0.1',#本地地址
      user = 'root',#一般默认用户名
      passwd = '********',#本地数据库登录密码(这里用你自己的密码!!!)
      db = 'test',#数据库名称(这里用你自己的数据库名称!!!)
      port = 3306,#安装mysql默认的端口号
      charset = 'utf8'#设置数据库统一编码
  )
  sql = 'SELECT * FROM `tdb_goods`;'
  df = pd.read_sql(sql,conn)
  导入表中所有数据并查看前五行
 
  sql = 'SELECT * FROM `tdb_goods`;'
  df = pd.read_sql(sql,conn)
  df.head()
  linux导出mysql表数据_MySQL 导出数据_mysql导出表数据sql
 
  选你所想
 
  一般来说,学sql增删查改基础中,查用的比较多,接下来我们简单使用一些sql查询
 
  查找cate_id=3的记录:
 
  sql1 = 'SELECT * FROM `tdb_goods` WHERE `cate_id` = 3;'
  df1 = pd.read_sql(sql1,conn)
  df1
  MySQL 导出数据_mysql导出表数据sql_linux导出mysql表数据
 
  查找价格大于5000的商品,注意这里默认按照goods_id排序的:
 
  sql2 = 'SELECT * FROM `tdb_goods` WHERE `goods_price` > 5000;'
  df2 = pd.read_sql(sql2,conn)
  df2
  mysql导出表数据sql_linux导出mysql表数据_MySQL 导出数据
 
  加上ORDER BY `goods_prices`之后,就是按照价格升序排列:
 
  sql2 = 'SELECT * FROM `tdb_goods` WHERE `goods_price` > 5000 ORDER BY `goods_price;'
  df2 = pd.read_sql(sql2,conn)
  df2
  MySQL 导出数据_mysql导出表数据sql_linux导出mysql表数据
 
  sql默认的是按照升序排列,如果想按照降序排列,可以这样写:
 
  sql2 = 'SELECT * FROM `tdb_goods` WHERE `goods_price` > 5000 ORDER BY `goods_price` DESC;'
  df2 = pd.read_sql(sql2,conn)
  df2
  linux导出mysql表数据_MySQL 导出数据_mysql导出表数据sql
 
  查找所有的平板电脑:
 
  sql3 = 'SELECT * FROM `tdb_goods` WHERE `goods_name` like "%平板电脑%";'
  df3 = pd.read_sql(sql3,conn)
  df3
  MySQL 导出数据_mysql导出表数据sql_linux导出mysql表数据
 
  将数据库文件导出成csv
 
  df.to_csv('E:\goods_info.csv', encoding = 'utf-8', index = False)
  mysql导出表数据sql_linux导出mysql表数据_MySQL 导出数据
 
  可以看到,数据成功导出成csv了~
 
  最后养成好习惯,断开与数据库的连接:
 
  conn.close()
  我们再次查询MySQL 导出数据,发现报错了,说明确实已经断开了连接:
 
  MySQL 导出数据_mysql导出表数据sql_linux导出mysql表数据
 
  如果运行代码报错,很可能是你的数据库名和数据库登录密码没有修改~
 
  文中如有错误和叙述不妥之处,望指正。
 

(编辑:我爱制作网_池州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!