数据分析之MySql篇{数据库基础概念}

 关于MySql基础学习的链接:

数据库

  按照一定的数据结构来组织、存储和管理数据的仓库。

  企业数据存储面临的问题
  • 存储大量数据,,这样的大数据并不是Excel可以处理的数据。
  • 大量数据的检索和访问
  • 保证数据信息的一致和完整
  • 数据共享和安全

  数据库分类

  • 关系型数据库:以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。
  • 非关系型数据库
分类Examples举例典型应用场景数据模型优点缺点
键值(key-value)Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB内容缓存,主要用于处理大量数据的高访问负载,也用于一些日志系统等等。Key 指向 Value 的键值对,通常用hash table来实现查找速度快数据无结构化,通常只被当作字符串或者二进制数据
列存储数据库Cassandra, HBase, Riak分布式的文件系统以列簇式存储,将同一列数据存在一起查找速度快,可扩展性强,更容易进行分布式扩展功能相对局限
文档型数据库CouchDB, MongoDbWeb应用(与Key-Value类似,Value是结构化的,不同的是数据库能够了解Value的内容)Key-Value对应的键值对,Value为结构化数据数据结构要求不严格,表结构可变,不需要像关系型数据库一样需要预先定义表结构查询性能不高,而且缺乏统一的查询语法。
图形(Graph)数据库Neo4J, InfoGrid, Infinite Graph社交网络,推荐系统等。专注于构建关系图谱图结构利用图结构相关算法。比如最短路径寻址,N度关系查找等很多时候需要对整个图做计算才能得出需要的信息,而且这种结构不太好做分布式的集群方案。

表结构数据

  • 由固定列和任意行构成的表结构的数据集
  • 表中的列称为字段,表中的行称为记录
  • 字段为基本的存储单位和计算单位
  • 每一个字段必须有字段名,且同一个表中的字段名不能重复
  • 每个字段的数据类型必须一致
    在这里插入图片描述

主流的关系型数据库

  • Oracle:运行稳定、可移植性高、功能齐全、性能超群,适用于大型企业
  • DB2:速度快、可靠性好、适用于海量数据、恢复性极强,适用于大中型企业
  • MySQL:开源、体积小、速度快,适用于中小型企业
  • SQL server:全面高效、界面友好易操作,但是不跨平台,适用于中小型企业

数据库、数据库管理系统和SQL之间的关系

  • 数据库是长期存储在计算机内、有组织的、统一管理的相关数据的集合
  • 数据库管理系统是用于管理数据库的软件,它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。
  • SQL是一种结构化查询语言(Structure Query Language),它是国际标准化组织(ISO)采纳的标准数据库语言。

数据库基本结构

  数据库:组织、存储和管理相关数据的集合,同一个数据库管理系统中数据库名必须唯一

  • 表:由固定列数和任意行数构成的二维表结构的数据集,同一个数据库中表名必须唯一
  • 字段:一列即为一个字段,同一个表中字段名必须唯一
  • 记录:一行即为一条记录
  • 以字段为基本存储和计算单位,每个字段的数据类型必须一致
    在这里插入图片描述

MySQL常用数据类型

  • int:大整数型,有符号大小-2147483648~2147483647, 无符号大小0~4294967295,默认长度最多为11个数字,如int(11)
  • float:单精度浮点型,默认float(10,2),表示最多10个数字,其中有2位小数
  • decimal:十进制小数型,适合金额、价格等对精度要求较高的数据存储。默认decimal(10,0),表示最多10位数字,其中0位小数。
  • char:固定长度字符串型,长度为1-255。如果长度小于指定长度,右边填充空格。如果不指定长度,默认为1。如char(10),‘abc ’
  • varchar:可变长度字符串型,长度为1-255。必须指定长度,如varchar(10),‘abc’
  • text:长文本字符串型,最大长度65535,不能指定长度
  • date:日期型,‘yyyy-MM-dd’
  • time:时间型,‘hh:mm:ss’ • datetime:日期时间型,‘yyyy-MM-dd hh:mm:ss’
  • imestamp:时间戳,在1970-01-01 00:00:00和2037-12-31 23:59:59之间,如1973-12-30 15:30,时间戳为:19731230153000

  字符串类型和日期时间类型都需要用引号括起来

SQL

SQL语言分类

  • 数据定义语言DDL:用于创建,修改,删除数据库中的各种对象(数据库、表、视图、索引等),常用命令有CREATEALTERDROP
  • 数据操作语言DML:用于操作数据库表中的记录,常用命令有INSERTUPDATEDELETE
  • 数据查询语言DQL:用于查询数据库表中的记录,基本结构:SELECT <字段名> FROM <表或视图名> WHERE <查询条件>
  • 数据控制语言DCL:用于定义数据库访问权限和安全级别,常用命令:GRANTREVOKE

  SQL书写要求
   • SQL语句可以单行或多行书写,用分号结尾
   • SQL关键字用空格分隔,也可以用缩进来增强语句的可读性
   • SQL对大小写不敏感
   • 用#或-- 单行注释,用/* */多行注释,注释语句不可执行

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值