大笔记

excel

逻辑函数

 	If
	 Iferror 
	 And 
	 Or 
	 Iseven
 	 Isodd 

统计函数

    Sum
	Sumif
	Sumifs
	Average
	Averageif
	Averageifs 

 Correl (相关系数)
	<0.3 不相关
	0.3~0.5 弱相关
	0.5~0.8中相关
	 > 0.8 强相关

查找函数

Vlookup
Hlookup
Index()
Match(找谁,在哪找,怎么找)

日期函数

Today()
Year()
Month()
Hour()
Date(year,month,day)
Datedif() ymd
Weeknum
Weekday

文本函数

Text(直,“类型”)
Len()长度
Lenb()字节
Left
Leftb
Right
Rightb
Mid
Midb
Find(找谁,在哪找,从第几位开始)
Replace
Substitute

统计学

顺序数据

数值型数据

箱线图

数据类型图示

数据分析
正态分布图

总体样本统计量

分类数据找众数

抑众比率

加权平均 调和平均

方差,平均差,标准差

Sqrt
Power

离散系数 大于15%

数据分析方法

现状
原因 rfm(用户等级)
预测
对比比分析法

平均分析法
平均分析法
运用计算平均数的方法来反映总体在一定时间 地点条件下

综合评价分析方法
运用多个指标,多个参评单位进行评价的方法,称为多变量综合评价分析方法,简称综合评价分析方法
1 确定指标
2数据标准化处理,单位不一样时需要处理
3确定指标中各指标的权重
4对处理的指标进行汇总计算出综合评价指数

01标准化

数据标准化——权重

=today-时间
=min(if(bb=k9,h:h))

R

漏斗图分析法 左分步——右总体,
适合业务流程规范,周期较长,各流程环节涉及负责业务过程,比较多的管理工具,、
漏斗图不仅能够提供用户业务中的转化率和流失率,还揭示了各种业务在网站中受欢迎的程度

矩阵关联分析法
根据事物(产品,服务等)的两个重要属性(指标)作为分析依据,进行分类关联分类,找出解决问题的一种分析方法,也称为矩阵关联分析法
必须求平均数,最大值,最小值

第一象限(高度关注区)
第二象限(优先改进区)
第三象限(无关紧要区)
第四象限(维持优势区)

Pest分析法
政治
经济
社会
技术

5w2h分析法

W
Why
What何事
Who谁
When 什么时间
Where 何地
How

逻辑树方法

数据分析法
利润-成本 画瀑布图

Debug 1+1

Vba 语法
a) Font.color=rgb (255,255,255) 字体颜色
b) Colorindex(1~56) 颜色 .Colorindex=3
c) Name
d) Range(“a1”).Interior.colorindex=背景
e) Aplication.calculatefull
f) Mod 取余
g) Rnd 随机
h) Application 运用Excel函数
i) For 变量=初始 to 结束(step
j) Next

k) If 条件 then
l) 语句
m) End if

n) Range(“a”&i).Entirerow .range(“a1:d1”) 整行

语法
Sub 定义自己的名称
对象=属性值
End sub
注意: 名词可以是中文英文 但第一个位置不要是数字

对象是指:工作簿,工作表,单元格,行,列等

Sheetn指前面的第n个

Range 选中单元格,单元格“a1”,多个“a1:b6”,多个 range(“a1:b6”, “c1:d8”)

使用Excel中的函数使用application. 加在前面

Vba 内取余

Step步长

Cells (行,列)

Calculatefull 用vba做刷新

Dim定义 变量

上面的加上定义单元格

Range 单元格

定义 str类型
Dim str as string

最后一个可见单元格

遍历文件 dir(路径&表名(”*.xlsx”)

Do 循环

  1. Do while i>1 条件为真时执行
  2. Do until I >1 条件为假执行
  3. Do “要执行的语句“

Loop while i>1 条件为真执行
4. Do 要执行的语句
Until i>1 条件为假执行

选择性粘贴

合并表代码——索引最后位置

合并工作簿

数据库

链接 数据 名字 密码

  1. 显示所有数据库
    Show databases; 显示数据库

注释

创建数据库
Create database name;

Create database 125班;

#使用数据库
Use 125班
快捷键ctrl+r 选中代码执行

删除数据库
Drop database 125;

Drop database if exists 数据库名

Create table student()
创建表
Craeate table 表名(
字段1
字段2
字段3

Id bigint
Name

Desc 表名 显示表内字段

改表内字段类型
Alter table student modify stu_name varchar (30)

添加 表内列
Alter table 表名 add 列名(字段名) 数据类型(长度)

修改列名(字段名)
Alter table 表名 change 原始列名 新列名 数据类型(长度)

插入单条记录
Insert into 表名 (列表1,列表2.。。)

例 insert into student(id,stu,name,age)value(3 ,张三,20)
插入多条记录
Insert into student(id,name,age) values(

插入所有字段

查询表中所有数据
Select * from 表名;
查询指定的
select 列名1,列名2 from 表名;

选择成绩大于60或等于60

Select name,abc from student where abc>=60

Where 后可= 关键字,数字,运算符

Where 后的筛选语法

In(“南”,“北“)
Like 模糊查找
Select * from new where 姓名 LIKE ‘__’
select * from new WHERE 姓名 LIKE “张%”

mysql -uroot –p

desc

数据类型

Tinyint 1 (-128,127) 0-255
smallint 2
mediumint 3
Int /integer 4
bigint 8

As 用法

1Create table 表名 like 旧表

3Create table 新表 as 对数据表备份
Select 语句

插入

。。。

谷老师
插入
Group_concat
1.Insert 旧表名(字段名,…)
Values(值)

  1. Insert 旧表名 (字段名,。。。)
    Values(值),(值)
  2. insert 旧表名(字段名)
    select 语句 :查询条件与上面字段名一致
  3. insert 旧表名
    select 列名 from 别的表

删除
Alter table 表名 drop 列名 删除整列
Delete 删除表内数据,可用where限制

Delete from 表名 where 条件
Drop 删全部

条件限制

#where
比较运算 > < >= <= <> 或!=

存在判断
Drop table test2
Drop table if exists test2

Update
Update aa set 年龄=20 where id=20
Update

Update 表名 set 年龄=20 where id=20(有条件就加,没有就不用where)

Show create table 表名
展示表备注

Show full columns from 表名

定义变量
set @pm=0 ;

SELECT *,@pm := @pm+1 FROM(
SELECT Sid,Sname,(SELECT AVG(score) FROM sc WHERE sid=student.Sid) 平均分

FROM student ORDER BY 平均分 DESC) as d;

查询顺序

都存在时的书写顺序
 Select
 From
 Where
 Group by
 Having
 Order by
 Limit

执行顺序
Select的执行

From –> where->group by ->聚合-.>having ->计算表达式 ->order by-> limit ->select

聚合函数

Limit 用法

If 语句 和 case when
#4 男生最高年龄与女生最高年龄之差
 SELECT max(if(性别=‘男’,年龄,NULL))-max(if(性别=‘女’,年龄,NULL)) as 差 FROM ccss_sample ;

 SELECT if(性别=‘男’,年龄,NULL) as 男,if(性别=‘女’,年龄,NULL) as 女 FROM ccss_sample

 SELECT if(性别=‘男’,年龄,NULL) as 男,if(性别=‘女’,年龄,NULL) as 女 FROM ccss_sample ;

 Case when语句
 SELECT case when性别=‘男’ THEN 年龄 end, case when性别=‘女’ THEN 年龄 end FROM ccss_sample;

字符方法函数

Concat 连接字符
Length 长度
Char_length
Trim 去空格

/*用于处理字符串的函数
合并字符串函数:concat(str1,str2,str3…) 类似于excel &,
CONCAT_WS(separator,str1,str2,…) 以指定的分隔符进行连接
比较字符串大小函数:strcmp(str1,str2)
获取字符串字节数函数:length(str) 类似excel lenb ,char_length(str) 类似excel len
字母大小写转换函数:大写:upper(x),ucase(x);小写lower(x),lcase(x)
字符串查找函数 LOCATE(要找谁,从哪各字段找)、POSITION(要找谁 IN 从哪各字段找)、INSTR(从哪各字段找,要找谁)

获取指定位置的子串 SUBSTRING(s,n,len)、MID(s,n,len),SUBSTR,LEFT(sname,1) RIGHT(str,len)
字符串去空函数: TRIM([remstr FROM] str) 默认去空格,LTRIM(s)、RTRIM(s)
字符串替换函数:REPLACE(列名,要替换掉的值,新值)
字符串截取:LEFT(sname,1) RIGHT(str,len)

*/

方差 标准差函数

From table

Var_pop (列名) 指定列总体方差 From table

Var_samp(列名) 指定列样本方差From table

Stddev_dev (列名)指定列总体标准差From table

Stddev_samp(列名) 指定列样本标准差From table

数据类型转换

Decimal (总长度,小数点数)

数学函数

 #数学函数
 #ABS 绝对值函数
 #ceiling 天花板整数,也就是大于x最小的整数
 select CEILING(2.3) #roundup
 #FLOOR(X)小于x的最大整数
 select FLOOR(2.9) #rounddown
 #EXP(X)自然对数e为底的x次方
 select exp(2)
 #返回集合中最大的值,least返回最小的,注意跟max,min不一样,max里面跟的是col,返回这个列的最大值最小值
 select GREATEST(1,2,3,4)
 select qa3,qa4,qa8,GREATEST(qa3,qa4,qa8),LEAST(qa3,qa4,qa8) from ccss_sample
 #ln(x)返回对数
 SELECT ln(10)
 SELECT exp(ln(10))
 #log(x,y),以x为底y的对数
 select log(10,100)
 #mod(x,y)返回x/y的余数
 select mod (5,2)
 #pi() 返回pi
 select pi()
 #RAND()返回0,1之间随机数
 select rand()
 #round(x,y)返回x四舍五入有y位小数的值
 select round(4.6,0)
 select round(2.3473,2)
 #sign(x) 返回x符号
 select sign(-5)
 #sqrt(x)返回x的平方根
 select SQRT(4)
 #truncate(x,y) 返回数字x截断为y位小数的结果,就是不考虑四舍五入,直接砍掉
 select TRUNCATE(4.67,1) #截断取整,不四舍五入
Exp
In

表关联

内连接 外连接

左连接 右连接
Left join
Right join

On +链接方式 条件
On

Left join
Select * from student left join sc on sc.sid = student.sid
Right join

左右交集

笛卡尔积链接

123 123————》11 12 13 21 22 23 31 32 33

CREATE TABLE dkej (id int)
INSERT dkej VALUES(1),(2),(3);
SELECT dkej.id,a.id FROM dkej,dkej as a

A as b

限定表id来源

分组

子查询

子查询 必须加括号

Select 后可用 写在()里

From 可用 括号 后加 as 新表名

时间函数

#获取系统时间
select curdate(),current_date() # excel 中 today
select curtime(),current_time(),
select now() #EXCel 中 now

#提取部分时间
SELECT now(), YEAR(now()),MONTH(now()),MONTHNAME(now()),DAY(now()),DAYNAME(now()),HOUR(current_time()),MINUTE(now()),SECOND(now())

#给指定时间加部分日期
select DATE_ADD(日期,INTERVAL 数 单位) #单位包括 YEAR,MONTH,DAY,HOUR,MINUTE,SECOND

#给指定时间减去部分日期
select DATE_sub(now(),INTERVAL 2 day)

#日期计算
select DATEDIFF(结束日期 ,开始日期) #日期天数之差
select TIMESTAMPDIFF(时间单位 ,‘2019-09-10’,curdate())

#时间戳,#单位包括 YEAR,MONTH,DAY,HOUR,MINUTE,SECOND

#把给定的内容转化为时间戳
UNIX_TIMESTAMP(时间字符串 或 时间)

#时间戳转化为时间或指定格式的字符串
FROM_UNIXTIME(时间戳[,格式])

#字符串转换为日期

STR_TO_DATE(时间字符串,格式)

select STR_TO_DATE(“01-3-2019”,"%m-%d-%Y")
%Y:代表4位的年份
%y:代表2为的年份

%m:代表月, 格式为(01……12)
%c:代表月, 格式为(1……12)
%b 缩写英文月名

%d:代表月份中的天数,格式为(00……31)
%e:代表月份中的天数, 格式为(0……31)

%H:代表小时,格式为(00……23)
%k:代表 小时,格式为(0……23)
%h: 代表小时,格式为(01……12)
%I: 代表小时,格式为(01……12)
%l:代表小时,格式为(1……12)

%i: 代表分钟, 格式为(00……59) 【只有这一个代表分钟,大写的I 不代表分钟代表小时】

%r:代表 时间,格式为12 小时(hh:mm:ss [AP]M)
%T:代表 时间,格式为24 小时(hh:mm:ss)

%S:代表 秒,格式为(00……59)
%s:代表 秒,格式为(00……59)
*/

#正则表达式

当前日期

#获取系统时间
select curdate(),current_date() # excel 中 today
select curtime(),current_time(),
select now() #EXCel 中 now

Curdate () 当前日期

加 date_add(日期,interval 数 单位)

日期计算
datediff(结束日期,开始日期) 单位为天

时间戳
Select timestampdiff(时间单位

时间转化为字符

字符串转化为日期 的格式

Str_to_date(“01-2-2019”,’%m-%d-%Y’)

导出表
默认路径更改

show VARIABLES LIKE ‘secure%’ ; #1secure_file_priv 文件路径 C:\ProgramData\MySQL\MySQL Server 5.7\Uploads\

SELECT * INTO OUTFILE “C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/test1.txt”
FROM sc

Select * into outfile ‘’ fields terminated by’,’ lines by ‘\t\n’’

修改文件名 与时间戳关联

set @str_name= CONCAT(“SELECT * INTO OUTFILE 'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/”,UNIX_TIMESTAMP(now()),".txt’ FIELDS TERMINATED by ‘,’
LINES TERMINATED by ‘\r\n’ FROM (SELECT ‘学号’,‘课程号’,‘分数’ UNION all SELECT * FROM sc) as a")

SELECT @str_name #
PREPARE tranlasion FROM @str_name
EXECUTE tranlasion

发布了70 篇原创文章 · 获赞 14 · 访问量 2626

猜你喜欢

转载自blog.csdn.net/Captain_DUDU/article/details/103485300