
学什么
数据分析要学的内容大致分为6个板块,分别是:
Excel
精通Excel分析工具,掌握Excel经典函数,准确快速地完成数据清洗,利用Excel数据透视及可视化,可以透过现象看本质。
MySQL
理解MySQL数据库相关概念及存储原理,掌握SQL基本的增、删、改、查等语法掌握数据库性能调优策略,熟练使用SQL进行数据清洗与数据规范化。
BI商业智能工具
了解商业智能的核心价值,精通FineReport、FineBI,快速挖掘数据价值,掌握行业场景应用。
Python
学习Python基本编程语言知识,了解Python程序的计算机运行原理,能够使用Python编程处理工作中的重复性工作。 掌握网络数据抓取技术,Python数据库应用开发,实现Python数据可视化 *** 作,提高数据收集和数据分析能力。 掌握Python数据分析处理基础库,具有应用Python语言解决数据分析中实际问题能力。
数据分析思维与理论
掌握微积分、线性代数、概率论、参数估计、假设检验、方差分析等数理统计基础 掌握基本的数学、统计学知识,学习数据运营方法论、机器学习夯实基础,提升数据敏感性,建立数据思维和数据素养。
掌握如何撰写行业分析报告和数据分析项目流程,能够独立完成数据分析项目。 掌握常见的数据运营方法如AARRR、漏斗、ABTset、描述性统计分析、相关分析、指数系统搭建等,培养利用多种数据分析方法解决实际工作问题能力。
机器学习
掌握机器学习常用经典算法原理及sklearn代码的实现、机器学习算法的选取、调优及模型训练、神经网络的特点及原理,增加个人核心竞争力,拥有能够用相关数据挖掘算法为解决实际问题能力;奠定人工智能算法入门基础。
如何学
至少花三个月掌握技术
“磨刀不误砍柴工”,要想从为“工人”,甚至熟悉工,也需要很多技能,因为怎么说数据分析师也是技术工种。我觉得至少你要花3个月时间来学习一些最基础的知识。
花1个月学习数据库知识。
花1-2个月学习基础的统计学知识。
花1个月学习点linux的知识。
花1~2个月去学习最基础的数据分析软件的 *** 作。
数据分析入门容易提高难,题主目前处于初级阶段,可以通过自学观看视频,或者系统培训来提高自己,已工作来说,接受系统培训会更加快速,更推荐跟着课程系统性的学习,搭建好逻辑框架。
如下罗列了一些创建、增、删、改、查相关,请参考(涉及的具体语法及参数自行查阅官方文档):
--1CREATE USER
--创建用户jim,登录密码为xxxxxxxxx。
openGauss=# CREATE USER jim PASSWORD 'xxxxxxxxx';
--下面语句与上面的等价。
openGauss=# CREATE USER kim IDENTIFIED BY 'xxxxxxxxx';
--如果创建有“创建数据库”权限的用户,则需要加CREATEDB关键字。
openGauss=# CREATE USER dim CREATEDB PASSWORD 'xxxxxxxxx';
--将用户jim的登录密码由xxxxxxxxx修改为Abcd@123。
openGauss=# ALTER USER jim IDENTIFIED BY 'Abcd@123' REPLACE 'xxxxxxxxx';
--为用户jim追加CREATEROLE权限。
openGauss=# ALTER USER jim CREATEROLE;
--将enable_seqscan的值设置为on, 设置成功后,在下一会话中生效。
openGauss=# ALTER USER jim SET enable_seqscan TO on;
--重置jim的enable_seqscan参数。
openGauss=# ALTER USER jim RESET enable_seqscan;
--锁定jim帐户。
openGauss=# ALTER USER jim ACCOUNT LOCK;
--删除用户。
openGauss=# DROP USER kim CASCADE;
openGauss=# DROP USER jim CASCADE;
openGauss=# DROP USER dim CASCADE;
--2创建和管理数据库
--使用如下命令创建一个新的数据库db_tpcc。
openGauss=# CREATE DATABASE db_tpcc;
注:
•数据库名称遵循SQL标识符的一般规则。当前角色自动成为此新数据库的所有者。
•如果一个数据库系统用于承载相互独立的用户和项目,建议把它们放在不同的数据库里。
•如果项目或者用户是相互关联的,并且可以相互使用对方的资源,则应该把它们放在同一个数据库里,但可以规划在不同的模式中。模式只是一个纯粹的逻辑结构,某个模式的访问权限由权限系统模块控制。
•创建数据库时,若数据库名称长度超过63字节,server端会对数据库名称进行截断,保留前63个字节,因此建议数据库名称长度不要超过63个字节。
--查看数据库
•使用\l元命令查看数据库系统的数据库列表。
openGauss=# \l
•使用如下命令通过系统表pg_database查询数据库列表。
openGauss=# SELECT datname FROM pg_database;
--修改数据库
用户可以使用如下命令修改数据库属性(比如:owner、名称和默认的配置属性)。
•使用以下命令为数据库设置默认的模式搜索路径。
openGauss=# ALTER DATABASE db_tpcc SET search_path TO pa_catalog,public;
--使用如下命令为数据库重新命名。
openGauss=# ALTER DATABASE db_tpcc RENAME TO human_tpcds;
--删除数据库
用户可以使用DROP DATABASE命令删除数据库。这个命令删除了数据库中的系统目录,并且删除了磁盘上带有数据的数据库目录。用户必须是数据库的owner或者系统管理员才能删除数据库。当有人连接数据库时,删除 *** 作会失败。删除数据库时请先连接到其他的数据库。
使用如下命令删除数据库:
openGauss=# DROP DATABASE human_tpcds;
--3CREATE TABLE
--表是建立在数据库中的,在不同的数据库中可以存放相同的表。甚至可以通过使用模式在同一个数据库中创建相同名称的表。创建表前请先规划存储模型。
openGauss=# CREATE TABLE customer_t1
(
c_customer_sk integer,
c_customer_id char(5),
c_first_name char(6),
c_last_name char(8)
);
当结果显示为如下信息,则表示创建成功。
CREATE TABLE
其中c_customer_sk 、c_customer_id、c_first_name和c_last_name是表的字段名,integer、char(5)、char(6)和char(8)分别是这四字段名称的类型。
--4向表中插入数据
--向表中插入数据前,意味着表已创建成功。
向表customer_t1中插入一行:
数据值是按照这些字段在表中出现的顺序列出的,并且用逗号分隔。通常数据值是文本(常量),但也允许使用标量表达式。
openGauss=# INSERT INTO customer_t1(c_customer_sk, c_customer_id, c_first_name) VALUES (3769, 'hello', 'Grace');
如果用户已经知道表中字段的顺序,也可无需列出表中的字段。例如以下命令与上面的命令效果相同。
openGauss=# INSERT INTO customer_t1 VALUES (3769, 'hello', 'Grace');
如果用户不知道所有字段的数值,可以忽略其中的一些。没有数值的字段将被填充为字段的缺省值。例如:
openGauss=# INSERT INTO customer_t1 (c_customer_sk, c_first_name) VALUES (3769, 'Grace');
openGauss=# INSERT INTO customer_t1 VALUES (3769, 'hello');
用户也可以对独立的字段或者整个行明确缺省值:
openGauss=# INSERT INTO customer_t1 (c_customer_sk, c_customer_id, c_first_name) VALUES (3769, 'hello', DEFAULT);
openGauss=# INSERT INTO customer_t1 DEFAULT VALUES;
如果需要在表中插入多行,请使用以下命令:
openGauss=# INSERT INTO customer_t1 (c_customer_sk, c_customer_id, c_first_name) VALUES
(6885, 'maps', 'Joes'),
(4321, 'tpcds', 'Lily'),
(9527, 'world', 'James');
如果需要向表中插入多条数据,除此命令外,也可以多次执行插入一行数据命令实现。但是建议使用此命令可以提升效率。
如果从指定表插入数据到当前表,例如在数据库中创建了一个表customer_t1的备份表customer_t2,现在需要将表customer_t1中的数据插入到表customer_t2中,则可以执行如下命令。
openGauss=# CREATE TABLE customer_t2
(
c_customer_sk integer,
c_customer_id char(5),
c_first_name char(6),
c_last_name char(8)
);
openGauss=# INSERT INTO customer_t2 SELECT FROM customer_t1;
从指定表插入数据到当前表时,若指定表与当前表对应的字段数据类型之间不存在隐式转换,则这两种数据类型必须相同。
删除备份表
openGauss=# DROP TABLE customer_t2 CASCADE;
在删除表的时候,若当前需删除的表与其他表有依赖关系,需先删除关联的表,然后再删除当前表。
--5更新表中数据
修改已经存储在数据库中数据的行为叫做更新。用户可以更新单独一行,所有行或者指定的部分行。还可以独立更新每个字段,而其他字段则不受影响。
使用UPDATE命令更新现有行,需要提供以下三种信息:
•表的名称和要更新的字段名
•字段的新值
•要更新哪些行
SQL通常不会为数据行提供唯一标识,因此无法直接声明需要更新哪一行。但是可以通过声明一个被更新的行必须满足的条件。只有在表里存在主键的时候,才可以通过主键指定一个独立的行。
建立表和插入数据的步骤请参考创建表和向表中插入数据。
需要将表customer_t1中c_customer_sk为9527的地域重新定义为9876:
openGauss=# UPDATE customer_t1 SET c_customer_sk = 9876 WHERE c_customer_sk = 9527;
这里的表名称也可以使用模式名修饰,否则会从默认的模式路径找到这个表。SET后面紧跟字段和新的字段值。新的字段值不仅可以是常量,也可以是变量表达式。
比如,把所有c_customer_sk的值增加100:
openGauss=# UPDATE customer_t1 SET c_customer_sk = c_customer_sk + 100;
在这里省略了WHERE子句,表示表中的所有行都要被更新。如果出现了WHERE子句,那么只有匹配其条件的行才会被更新。
在SET子句中的等号是一个赋值,而在WHERE子句中的等号是比较。WHERE条件不一定是相等测试,许多其他的 *** 作符也可以使用。
用户可以在一个UPDATE命令中更新更多的字段,方法是在SET子句中列出更多赋值,比如:
openGauss=# UPDATE customer_t1 SET c_customer_id = 'Admin', c_first_name = 'Local' WHERE c_customer_sk = 4421;
批量更新或删除数据后,会在数据文件中产生大量的删除标记,查询过程中标记删除的数据也是需要扫描的。故多次批量更新/删除后,标记删除的数据量过大会严重影响查询的性能。建议在批量更新/删除业务会反复执行的场景下,定期执行VACUUM FULL以保持查询性能。
--6查看数据
使用系统表pg_tables查询数据库所有表的信息。
openGauss=# SELECT FROM pg_tables;
使用gsql的\d+命令查询表的属性。
openGauss=# \d+ customer_t1;
执行如下命令查询表customer_t1的数据量。
openGauss=# SELECT count() FROM customer_t1;
执行如下命令查询表customer_t1的所有数据。
openGauss=# SELECT FROM customer_t1;
执行如下命令只查询字段c_customer_sk的数据。
openGauss=# SELECT c_customer_sk FROM customer_t1;
执行如下命令过滤字段c_customer_sk的重复数据。
openGauss=# SELECT DISTINCT( c_customer_sk ) FROM customer_t1;
执行如下命令查询字段c_customer_sk为3869的所有数据。
openGauss=# SELECT FROM customer_t1 WHERE c_customer_sk = 3869;
执行如下命令按照字段c_customer_sk进行排序。
openGauss=# SELECT FROM customer_t1 ORDER BY c_customer_sk;
--7删除表中数据
在使用表的过程中,可能会需要删除已过期的数据,删除数据必须从表中整行的删除。
SQL不能直接访问独立的行,只能通过声明被删除行匹配的条件进行。如果表中有一个主键,用户可以指定准确的行。用户可以删除匹配条件的一组行或者一次删除表中的所有行。
使用DELETE命令删除行,如果删除表customer_t1中所有c_customer_sk为3869的记录:
openGauss=# DELETE FROM customer_t1 WHERE c_customer_sk = 3869;
如果执行如下命令之一,会删除表中所有的行。
openGauss=# DELETE FROM customer_t1;
或
openGauss=# TRUNCATE TABLE customer_t1;
全表删除的场景下,建议使用truncate,不建议使用delete。
删除创建的表:
openGauss=# DROP TABLE customer_t1;
数据分析需要学习以下几点:
一、统计学。二、编程能力。三、数据库。四、数据仓库。五、数据分析方法。六、数据分析工具。
想要成为数据分析师应该重点学习以下两点:
1python、SQL、R语言
这些都是最基础的工具,python都是最好的数据入门语言,而R语言倾向于统计分析、绘图等,SQL是数据库。既然是数据分析,平时更多的时间就是与数据分析打交道,数据采集、数据清洗、数据可视化等一系列数据分析工作都需要上面的工具来完成。
2业务能力
数据分析师存在的意义就是通过数据分析来帮助企业实现业务增长,所以业务能力也是必须。企业的产品、用户、所处的市场环境以及企业的员工等都是必须要掌握的内容,通过这些内容建立帮助企业建立具体的业务指标、辅助企业进行运营决策等。
当然这些都是数据分析师最基本也是各位想转行的小伙伴需要重点学习的内容,以后想要有更好的发展,还需要学习更多的技能,例如企业管理,人工智能等。
关于数据分析师的学习可以到CDA数据分析认证中心看看。全球CDA持证者秉承着先进商业数据分析的新理念,遵循着《CDA职业道德和行为准则》新规范,发挥着自身数据专业能力,推动科技创新进步,助力经济持续发展。
你的表里这个字段存在否
如果是主键你要更新的话你的参数strTblName必须有这个字段相应的值,否则无法安主键查找到相应的数据进行更新
既然是主键,那更新的时候必须得有这个参数,没有这个参数就无法给你找到相应数据
以上就是关于数据分析师需要学习什么全部的内容,包括:数据分析师需要学习什么、求一份openGauss常用SQL示例 做个简单的入门练手测试~、数据分析需要学哪些等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)