MySQL+关联(上)


飞谷云 MySQL 第3讲

MySQL+表连接

课程概要:

  • 回顾第二讲
  • 表关联
  • 文件关联
  • 把数据导入Spark-SQL (DataFrame)

一、回顾第二讲

1、数据库基本内容

      • 主键
      • 索引

2、数据导入(出)

  • mysql
    • sql 命令
    • 工具(mysqldump,mysqlimport)
    • 客户端
  • python
    • pd.read_csv(path/file)

二、表关联

  • 表关联类型
    • 内连接(内连接):
      • 仅显示满足条件的行
      • 下面两种写法:
      • From T1, T2 where T1.ID=T2.ID
      • From T1 inner join T2 ON T1.ID=T2.ID
  • 左链接(左连接):
    • 显示左表T1中的所有行,并把右表T2中符合条件加到左表T1中
    • From T1 left outer join T2 ON T1.ID=T2.ID
  • 右链接(左连接):
    • 显示左表T1中的所有行,并把左表T1中符合条件加到右表T2中
    • From T1 right outer join T2 ON T1.ID=T2.ID
  • 全连接
    -显示左表T1、右表T2两边中的所有行,即把左联结果表+右联结果表组合在一起,然后过滤掉重复的
  • From T1 full outer join T2 ON T1.ID=T2.ID

三、文件关联

  • 文件关联类型:
    • 与表关联一样
      • 通过主键或一些字段
    • 如何实现
      • 通过一列或多列

四、把数据导入Spark-SQL

  • Spark-SQL 简介:
    • Hadoop+MapReduce -> hive -> Shark -> Spark-SQL
  • RDDDataFrame
    • DataFrame 是以 RDD 为基础的分布式数据集
    • DataFrame 类似于传统数据库的表
    • DataFrame 带有 Schema元数据(类似表结构信息)
    • 操作 RDDDataFrame: Transformationaction
  • 生成 DataFrame
    • 初始化环境,实例化 SparkContext(sc)得SQLContext(对象)
    • 创建 DataFrame(源于 RDD或其他数据源)
    • 调用 DataFrame操作

推荐阅读更多精彩内容