access导⼊txtsql语句_SQL初级数据分析(基于
MicrosoftAccess)
⼀、数据库与SQL
1、数据库介绍
数据库(Database)是按照数据接⼝来组织、存储和管理数据的仓库。通过数据库中的各种对象,进⾏记录、处理、分析各种数据。常⽤数据库:
Oracle
SQL Server
MySQL
Access
2、Access数据库
2.1、Microsoft Office办公软件重要组成部分,⼀种关系数据管理系统软件。
存储、处理、分析数据,数据处理功能更强⼤,数据量较⼤(⼤于⼏⼗万)时使⽤。
2.2、优缺点
优点:操作界⾯熟悉且友好,容易操作;查询处理可以直接⽣成相应的SQL语句;适合数据库⼊门
缺点:数据库过⼤(Access⽂件⼤于100M)性能会变差;每个数据库⽂件最⼤上限为2G
2.3、六个对象:
表:存储数据
查询:查数据
窗体:获取数据
报表:获取数据
access常见条件表达式
宏:⾃动化操作
模块:⾃动化操作
3、SQL简介
3.1、什么是SQL
SQL(Structured Query Language)结构化查询语⾔,⼀种通⽤的关系型数据库操作语⾔,⽤于存取数
据、查询、更新和管理数据库。SQL的本质是让数据库根据⽤户要求实现查询操作,数据查询是数据库的核⼼操作。
SQL是各类数据库语⾔的基础。
3.2、SQL常⽤语句
3.3、SQL语法
SQL查询语⾔中的核⼼语⾔,能根据指定的条件规则从数据库中查询所要的数据。
1)SELECT语句是SQL查询语⾔中的核⼼语⾔
2)基本语法:
SELECT
条件是⾮必须的语句,但⼀般情况下都会进⾏具有某种条件的查询。
3)SQL语句⽰例:
SELECT
4)SQL语句注意事项
SQL语句中,英⽂字母⼤写或⼩写均可;
每个SQL语句的关键字⽤空格符号分隔,例:SELECT 字段 FROM 表;
每个SQL语句的关键字⽤空格符号分隔
字段或参数之间⽤英⽂逗号分隔
字段或参数之间⽤英⽂逗号分隔,例:SELECT 姓名,性别,年龄,⾝⾼ FROM 会员表
SQL语句中如参数为字符型,需要使⽤英⽂单引号,数值型则不使⽤,例:SELECT 姓名,性别,年龄,⾝⾼,⽉收⼊ FROM 会员表WHERE 性别='男';
SQL语句结束时,在语句结尾处添加英⽂分号(虽然在Access数据库中⽆强制要求,但为了养成良好编程习惯建议⼀定添加,避免SQL语句结束时,在语句结尾处添加英⽂分号
出错)
如表名、字段名中出现空格、"/"、""等特殊字符时,需要⽤⽅括号"[]"将还有特殊字符的表名或字段Access数据库SQL语句中,如表名、字段名中出现空格、"/"、""等特殊字符时,需要⽤⽅括号"[]"将还有特殊字符的表名或字段名括起来,以免得到不正确的结果或SQL语句⽆法运⾏;
名括起来,
SQL语句中,"*"代表选定数据表中的所有字段,并且按照其在数据库中的固定顺序来显⽰,例:SELECT *
SQL语句中,"*"代表选定数据表中的所有字段,并且按照其在数据库中的固定顺序来显⽰
FROM 表;
Access数据库,在函数参数中或条件查询中,若参数或查询条件为⽇期和时间类型数据,需要在数据值两端加上井字符号(#),
⽇期和时间类型数据,需要在数据值两端加上井字符号(#),以表⽰数据类型为⽇期型;
以表⽰数据类型为⽇期型
SQL语句中使⽤的逗号、分号、单引号、括号等符号均为英⽂符号
SQL语句中使⽤的逗号、分号、单引号、括号等符号均为英⽂符号;
应尽量避免在数据库中进⾏全表扫描:⾸先应考虑⽤WHERE⼦句筛选出需要的数据;其次在WHERE⼦句中,应尽量避免使应尽量避免在数据库中进⾏全表扫描
⽤"!="或"<>"、"OR"等;最后应尽量避免在WHERE⼦句中对字段进⾏函数操作,否则将进⾏全表扫描;
⼆、数据处理
1、数据导⼊
创建Access数据库
Excel数据导⼊
⽂本数据导⼊
2、创建查询
查询设计:点击右下⾓SQL按钮可以得到SQL语句
SQL视图
⽤"as"重新命名,如:
数据表表名有特殊字符需要⽤⽅括号括起来,还可以⽤"as"重新命名
3、数据抽取
3.1、字段拆分
截取某⼀字段的部分信息形成⼀个新字段,⽐如提取⾝份证号码的不同字段。
提取⽅式同Excel,使⽤函数LEFT、RIGHT、MID,公式如下:
LEFT(字符串,提取的位数)
RIGHT(字符串,提取的位数)
MID(字符串,提取的起始位置,提取的位数)
以提取⾝份证号码为例:
SELECT
3.2、记录抽取
根据指定的条件对数据表中的数据记录进⾏筛选,抽取出符合条件的数据记录。
使⽤筛选功能,在SQL中主要使⽤WHERE⼦句,举例见第⼀部分:数据库与SQL-3.3-3。WHERE 条件表达式
以下是相关案例:
案例1
SELECT
案例2
SELECT
案例3
SELECT
案例4
SELECT
案例5
SELECT
案例6
SELECT
3.3、随机抽样
按照随机的原则,即保证总体中的每个单位都有同等机会被抽中,进⾏抽取样本的⼀种⽅法。
应⽤:调查⽤户⾏为异常;数据挖掘建模
参数必须是数值型数据;如果参数是字符型,可以⽤函数LEN计算字符型长度,转换为
⼀个参数,参数必须是数值型数据
函数RND
函数RND进⾏随机抽样,该函数只有⼀个参数
数值型数据。
例如,随机抽取⽤户明细表中20个⽤户
SELECT
4、数据合并
综合不同的原数据表中某⼏个字段的信息或不同记录数据,组合成⼀个新字段或新记录数据,包括字段合并、字段匹配、记录匹配。
4.1、字段合并
将某⼏个字段合并成⼀个新字段,⽐如将之前⾝份证号码中提取的年、⽉、⽇合并成出⽣⽇期字段。
连接符:&、+
SELECT
以上代码⽣成的字段是字符型,不是⽇期型;可以使⽤函数DateSerial直接⽣成⽇期型字段,与Excel中函数Day⼀致。
函数DateSerial,返回包含指定的年、⽉、⽇的⽇期;公式:DateSerial(year,month,day)
SELECT
4.2、字段匹配
根据各表共有的关键字段把各表所需的记录⼀⼀对应,相当于Excel中的函数VLOOKUP的精确匹配功能。
数据库连接关系
内连接(INNER JOIN):选择两个表中关键字段相匹配的记录
内连接(INNER JOIN)
左连接(LEFT JOIN):选择第⼀个表中的所有记录以及第⼆个表中关键字段相匹配的记录
左连接(LEFT JOIN)
右连接(RIGHT JOIN):选择第⼆个表中的所有记录以及第⼀个表中关键字段相匹配的记录
右连接(RIGHT JOIN)
在Access的数据库⼯具中创建关系,到关键字段,选择需要的联接类型。
⽤户留存率、再购买率等。
左连接与右连接的原理⼀致,左连接经常⽤来计算⽤户留存率、再购买率
4.3、记录合并
将具有共同的数据字段、结构,但记录信息不同的数据表合并到⼀个新的数据表。
在SQL中使⽤UNION或UNION ALL合并两表或多表。
*UNION会删除各表中的重复记录,并进⾏排序,使⽤时要慎重;UNION ALL则不做重复数据处理。
SELECT
如果需要保存新合并的数据表,将合并查询结果插⼊⼀个新建相同字段、结构的空表中。
SELECT
*上⾯WHERE条件1=2永远不成⽴,因此插⼊0条记录,就相当于新建了⼀个相同字段、结构的空表。
将合并查询的记录插⼊⾄刚才新建的空表中。
INSERT
5、数据去重
保留唯⼀的数据记录,删除其他多余的重复记录。
在SQL中常⽤的两种数据去重⽅式为:GROUP BY⼦句和DISTINCT
5.1、GROUP BY⼦句
⾏标签分组功能。分组字段可以有多个,即多条件去重,同时满⾜才去重,对数据按指定的分组字段进⾏分组,相当于EXCEL透视表中的⾏标签
⽤英⽂逗号分隔。
SELECT
5.2、DISTINCT
忽略所选字段中包含重复数据的记录,数据去重。同理,字段可以有多个,即多条件去重,同时满⾜才去重,⽤英⽂逗号分隔。
SELECT
6、数据分组
重要的数据分析⽅法,根据数据分析对象特征,按照⼀定的指标,如业务、⽤户属性、时间等维度,把数据分析对象划分为不同的部分和类型进⾏研究,以揭⽰其内在的联系和规律性。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。