IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 我的mySQL备忘录 -> 正文阅读

[大数据]我的mySQL备忘录

1.日期函数

date_add(date1, interval 1 day) = date2
date1的后一天是date2

2.字符串函数

substring_index(str,delim,count)
str:要处理的字符串
delim:分隔符
count:计数
例子:str = www.wikibt.com
substring_index(str,‘.’,1)
结果是:www
substring_index(str,‘.’,2)
结果是:www.wikibt
substring_index(str,‘.’,-2)
结果是:wikibt.com
substring_index(substring_index(str,‘.’,-2),‘.’,1)
结果是:wikibt

3.if用法

if(profile like ‘%female’,‘female’,‘male’)
sum(if(result = ‘right’,1,0)) as correct_cnt

4.distinct 与desc

distinct只返回不同(具有唯一性)的行,作用于所有的列,不仅仅是跟在其后的那一列。
desc 降序排序(默认升序asc)只应用到直接位于其前面的列名。如果想在多个列上进行降序排序,必须对每一列指定desc关键字。

5.年月的匹配方法

2021年8月份,匹配date字段即可,匹配方法主要有三种:
(1)like语法:date like “2021-08%”;
(2)year、month函数:year(date)=‘2021’ and month(date)=‘08’;
(3)date_format函数:date_format(date, ‘%Y-%m’)=‘2021-08’.

6.字符串函数

concat(‘first’,‘last’) --连接字符串
upper(‘sky’) – 大写的字符串
lower(‘Sky’) – 小写的字符串
left(‘Kindergarten’,4) – 取字符串左侧的前4个字符
right(‘Kindergarten’,6) – 取字符串右侧的前6个字符

7.插入记录的方式汇总:

  • 普通插入(全字段):
    insert into table_name values(value1,value2,···)
  • 普通插入(限定字段):
    insert into table_name(column1,column2,···) values(value1,value2,···)
  • 多条一次性插入:
    insert into table_name(column1,column2,···) values(value1_1,value1_2,···),(value2_1,value2_2,···)
  • 从另一个表导入:
    -insert into table_name select * from table_name2 [where key=value]

8.replace into和insert into的区别

replace into 跟 insert into 功能类似,不同点在于:replace into 首先尝试插入数据到表中,

  • 如果发现表中已有此行数据(根据主键或者唯一索引判断)则先删除此行数据,然后插入新的数据;
  • 否则,直接插入新数据。

9.时间差

timestampdiff(interval,time_start,time_end)可计算time_start-time_end的时间差,单位以指定的interval为准,常用可选:

  • second秒
  • minute分钟(返回秒数差除以60的整数部分)
  • hour小时(返回秒数差除以3600的整数部分)
  • day天数(返回秒数差除以3600*24的整数部分)
  • month月数
  • year年数

10.表的创建:

10.1直接创建表

CREATE TABLE
[IF NOT EXISTS] tb_name -- 不存在才创建,存在就跳过
(column_name1 data_type1 -- 列名和类型必选
  [ PRIMARY KEY -- 可选的约束,主键
   | FOREIGN KEY -- 外键,引用其他表的键值
   | AUTO_INCREMENT -- 自增ID
   | COMMENT comment -- 列注释(评论)
   | DEFAULT default_value -- 默认值
   | UNIQUE -- 唯一性约束,不允许两条记录该列值相同
   | NOT NULL -- 该列非空
  ], ...
) [CHARACTER SET charset] -- 字符集编码
[COLLATE collate_value] -- 列排序和比较时的规则(是否区分大小写等)

10.2 从另一张表复制表结构创建表:

CREATE TABLE tb_name LIKE tb_name_old

10.3 从另一张表的查询结果创建表:

CREATE TABLE tb_name AS SELECT * FROM tb_name_old WHERE options

11.修改表:

ALTER TABLE 表名 修改选项


alter table user_info add school varchar(15) after level;
增加列在某列之后
alter table 增加的表格 add 增加列的名称 数据类型 位置(after levellevel 之后)

alter table user_info change job profession varchar(10);
更换列的名称及数据类型
alter table user_info change 原列名 修改列名 修改数据类型

alter table user_info modify achievement int(11) default 0;
更改数据类型
alter table 表名 modify 修改列名称 数据类型 默认值等

选项集合

    { ADD COLUMN <列名> <类型>  -- 增加列
     | CHANGE COLUMN <旧列名> <新列名> <新列类型> -- 修改列名或类型
     | ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT } -- 修改/删除 列的默认值
     | MODIFY COLUMN <列名> <类型> -- 修改列类型
     | DROP COLUMN <列名> -- 删除列
     | RENAME TO <新表名> -- 修改表名
     | CHARACTER SET <字符集名> -- 修改字符集
     | COLLATE <校对规则名> } -- 修改校对规则(比较和排序时用到)

12.删除表

drop table [if exists] 表名1[,表名2]

13.创建索引

13.1 create方式创建索引:

create
[unique -- 唯一索引
|fulltext -- 全文索引
] index index_name on table_name -- 不指定唯一或全文时默认普通索引
(column1[(length)[desc|asc]][,column2,···]) -- 可以对多列建立组合索引

13.2 alter方式创建索引:

alter table tb_name add [unique|fulltext] [index] index_content(content)

14.删除索引

14.1 drop方式删除索引:

drop index <索引名> on <表名>

14.2 alter方式删除索引:

alter table <表名> drop index <索引名>
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-05-19 11:58:28  更:2022-05-19 11:59:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 20:45:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码