谁说菜鸟不会数据分析(工具篇)----- 学习笔记1(Access SQL基本用法)

1、数据库(database)

数据库是按照数据结构来组织、存储和管理数据的仓库。利用数据库中的各种对象,记录、处理和分析各种数据。

常用数据库:oracle,SQL Server,MySQL,Access等关系型数据库

NoSQL技术的分布式数据库:Hbase,MongoDB,Redis等

(1)Access数据库

      优点:操作界面友好,易操作;查询处理可直接生成相应的SQL语句

      不足:数据库过大时(Access数据库文件百兆以上),性能变差。

             记录数据过多时(记录达到千万条以上),性能变差。

             Access数据库中每个数据库文件上限为2GB

(2)SQL:(structured query language)结构化查询语言

一种通用的关系型数据库操作语言。让数据库按我们的意思实现查询操作的语言。

业内人士常说的数据挖掘:是通过对历史数据进行建模预测,生成一定的规则,然后数据库工程师将生成的规则编写成相应的SQL语句,并编写成数据库的存储过程,可定期执行它们得到数据模型结果。

处理大数据的Hadoop,所使用的Hive语言(HQL),与SQL 语言基本一致,部分语句的编写或功能存在差异。

            

注意事项:

    在SQL 语句中,英文字母大写或小写均可;每个SQL语句的关键字用空格符合分隔;字段或参数之间用逗号分隔

    SQL语句中如参数为字符型,需要单引号,数值型不用单引号;SQL语句结束时,在语句结尾处添加分号;

    SQL语句中如表名、字段中出现空格、‘/’,'\'等特殊字符时,需用方括号[],将含有特殊字符的表名字段名括起来;

    ‘*’代表选定表格中的所有字段,并按照其在数据库中的固定顺序来排序;

    在函数参数或条件查询中,若参数或查询条件为日期和时间类型数据,需在数据值两端加井字符号‘#’,表示数据类型为日期型;

   SQL语句中使用的逗号,分号,单引号,括号等符号均为英文状态下输入的符号;

   尽量避免在数据库中进行全表扫描。在where语句中尽量避免‘!=’,‘<>’,‘OR’等或对字段进行函数操作,否则进行全表扫描。

(3)索引和主键

索引相当于对指定的列进行排序,就好比是一本书的目录,通过它可以快速查询到结果,无需全表扫描,加快数据库查询速度。

主键是确定数据中每一条记录的唯一标识,本质是索引,一个特殊索引。主键所在列每一记录都是唯一的,在同一表里只能有一个主键。

两者区别:

i:     主键用于标识数据库记录的唯一性,不允许记录重复,且键值不能为空。主键是一个特殊的索引,主键=索引,索引不一定等于主键。

ii:     索引可提高查询速度,通过它可快速查询到结果,无需全表扫描

iii:    使用主键,数据库会自动创建主索引,也可在非主键上创建索引,提高查询速度。

iiii:   数据表中只允许有一个主键,但可有多个索引。

在Access数据库中,主键不是必须的,但为每个表设置一个主键,可提高查询速度。

(4)Access数据库数据导入方法

直接导入法:Access数据库中的表与数据源脱离了联系,对数据的更改不会影响源文本数据文件

建立链接法:链接表显示源文本文件中的数据,但它实际上并不将数据存储在数据库中,对源文本文件进行的任何更改都将自动反映到链接表中,即数据会随数据源的变化而自动更新。

(5)数据合并

在函数参数或条件查询中,若参数或查询条件为日期和时间类型,需要在数据值两端加上井字符号,以表示数据类型为日期型。

(6)数据分组:数值分组、日期/时间分组

四个分组函数的有缺点比较
数值分组函数 优点 缺点
iif 可进行不等距分组

语句冗长,极易出错

最多可进行13层嵌套

choose 分组可达254个 只能进行等距分组
switch 可进行不等距分组 条件表达式最多达到14个
partition

分组不限

语句简单、清晰明了

只能进行等距分组
format函数日期/时间参数说明表
日期/时间格式参数 说明
时间分隔符
/ 日期分隔符
d 根据需要以一位或两位数字表示一个月中的第几天(1~31)
dddd 星期的全称(Sunday~Saturday)
w 一周中的第几天(1~7)
ww 一周中的第几周(1~53)
m 根据需要以一位或两位数字表示一年中的月份(1~12)
mmmm 月份的全称(January~December)
q 一年中的第几季(1~4)
y 一年中的第几天(1~366)
yyyy 完整的年份(0100~9999)
h 根据需要以一位或两位数字表示小时(0~23)
n 根据需要一位或两位数字表示分钟(0~59)
s 根据需要用一位或两位数字表示秒(0~59)

(7)重复数据

        group by /  disdinct

(8)数据分析:简单统计、分组统计、交叉统计

 

猜你喜欢

转载自blog.csdn.net/mengjizhiyou/article/details/82793819