沉淀-MYSQL
MYSQL学习
数据库操作
创建数据库 create database db_name;
删除数据库 drop database db_name;
选择/使用数据库 use db_name;
使用mysqladmin在终端执行
创建数据库 mysqladmin -u root -p create db_name Enter password:***
删除数据库 mysqladmin -u root -p drop db_name Enter password:***
数据类型
常用数据类型:
- int:整数
- float(M,D):浮点数,4字节,M长度D小数位数
- double(M,D):浮点数,8字节,M长度D小数位数
- varchar:字符串,0-65535字节 可变长度字符串 String
- datetime:日期型,8字节,混合日期和时间
数据表操作
创建数据表 create table tb_name (column_name column_type);
eg:
create table if not exists 'tb_name'(id int auto_increment,title varchar(100) not null,date dateprimary key (id)
);
#创建表tb_name,存在id、title、date。id是自增的(auto_increment),且为主键(primary key)是int型,title是字符串型限制100大小,date是日期型
删除数据表 drop table tb_name;
修改数据表(表名、表字段)
#存在int i 和char(1) c
alter table tb_name drop i; #删除表字段
alter table tb_name add i int;#增加表字段
alter table tb_name modify c char(20);#修改表字段c的数据类型
alter table tb_name change i j char(5);#修改表字段i的名称为j以及数据类型
alter table tb_name rename to new_name;#修改表名
插入数据 insert into tb_name(column1,column2)values (v1,v2);
查询数据 select column1,column2 from tb_name where … limit 5
更新数据 update tb_name set column1=v1,column2=v2 where …
删除数据 delete from tb_name where …
其他操作
like模糊匹配
模糊匹配,%多个字符,_一个字符
eg:
name:abcdef、bcdef、aaabcdef
select * from tb_name where name like '%bcdef' abcdef、aaabcdef
select * from tb_name where name like '_bcdef' abcdef
union并集
union:连接两个以上的select语句的结果到一个结果集合中,删除重复数据,即取并集并去重
union all:连接两个以上的select语句的结果到一个结果集合中,即取并集并不去重
eg:
#并集去重
select country from tb1
union
select country from tb2
order by country;
#并集不去重
select country from tb1
union all
select country from tb2
order by country;
order by排序
ASC 升序,DESC降序
eg:
select * from tb_name order by id ASC; #id:1-10
select * from tb_name order by id ASC; #id:10-1
group by分组
根据一个或多个列对结果集进行分组,可使用 COUNT,SUM,AVG等函数
eg:
select * from tb_name where age=10 group by sex;
连接(内连接、外连接)
inner join:内连接,获取两表中字段匹配关系的记录;即两表交集
left join:左连接,获取左表所有记录,即使右表无对应记录;
right join:右连接,获取右表所有记录,即使左表无对应记录
NULL 值
select * from tb_name where id is null;
select * from tb_name where id is not null;
#求相关null的数据的时候,不能使用id=null,id!=null。要是用is 和 is not
事务
场景:处理操作量大,复杂度高的数据,需要确保要么全部执行,要么全部未执行,用于管理insert、update、delete。
特性:原子性、一致性、隔离性、持久性
begin开始事务,操作完成之后,commit提交事务,即所有操作全部执行
begin开始事务,操作完成后,rollback回滚,即所有操作全部取消执行
索引
目的:提高MySQL的检索速度
单列索引:一个索引只包含单个列
组合索引:一个索引包含多个列
创建索引:create index index_name on tb_name(column_name);
添加索引:alter table tb_name add index index_name(column_name);
删除索引:drop index index_name on mytable; alter table tb_name drop index index_name;
显示索引信息:show index from tb_name\G \G:格式化输出信息
临时表
只在当前连接中可见,关闭连接自动删除表并释放空间
#创建临时表
create temporary table tb_name(a int,b char(5)
);
#写入数据
insert into tb_name (a,b) values (100,'string');
#查看数据
select * from tb_name;
#使用show tables 显示所有表时,不存在临时表tb_name
#退出当前连接,再使用select查找临时表tb_name时,无法查看
#删除临时表,断开连接自动删除,or:
drop table tb_name;
复制表
由表a复制出表b,保留表结构、索引以及数据
#查看a的建表语句
show creat table a \G;
#修改a的表名为b后创建表b
create table b(
……
);
#拷贝a的数据到b中
insert into b (b1,b2,b3) select a1,a2,a3 from a;
设置不能重复数据
#使用主键确保不重复
create table tb_name(a char(20),b char(20),c int,primary key(a,b)
);#双主键
#使用unique确保不重复
create table tb_name(a char(20),b char(20),c int,unique(a,b)
);
相关文章:
沉淀-MYSQL
MYSQL学习 数据库操作 创建数据库 create database db_name; 删除数据库 drop database db_name; 选择/使用数据库 use db_name; 使用mysqladmin在终端执行 创建数据库 mysqladmin -u root -p create db_name Enter password:*** 删除数据库 mysqladmin -u root -p drop db…...
OJ练习第116题——二进制矩阵中的最短路径(BFS)
二进制矩阵中的最短路径 力扣链接:1091. 二进制矩阵中的最短路径 题目描述 给你一个 n x n 的二进制矩阵 grid 中,返回矩阵中最短 畅通路径 的长度。如果不存在这样的路径,返回 -1 。 二进制矩阵中的 畅通路径 是一条从 左上角 单元格&am…...
2023上半年软件设计师真题评析
2023年上半年软设是2018年改版后的一次考试,以下内容根据考完回忆结合网上暂时流传的真题(不保证完全正确)整理,主要侧重相关知识点罗列,少讲或不讲具体的答案,主要给自己的计算机基础查漏补缺,同时也希望对大家有帮助…...
(汇编) 基于VS的x86汇编基础指令
文章目录 环境汇编基础标志位常用指令 vs配置END 环境 visual studio 选择x86运行 示例代码 /** | 32位 | 16位 | 高8位 | 低8位 | | ---- | ---- | ----- | ----- | | EAX | AX | AH | AL |*/ #include <iostream>int main() {int32_t x 1;int32_t y 2;//…...
算法Day16 | 104.二叉树的最大深度,559.n叉树的最大深度, 111.二叉树的最小深度,222.完全二叉树的节点个数
Day16 104.二叉树的最大深度559.n叉树的最大深度111.二叉树的最小深度222.完全二叉树的节点个数 104.二叉树的最大深度 题目链接: 104.二叉树的最大深度 深度和高度相反。 高度,自然是从下向上数:叶子节点是第一层,往上数&#x…...
java设计模式之责任链设计模式的前世今生
责任链设计模式是什么? 责任链设计模式(Chain of Responsibility Pattern)是一种行为型设计模式,它允许多个对象都有机会处理请求,从而避免请求的发送者与接收者之间的耦合关系。在责任链模式中,每个处理对…...
是面试官放水,还是公司太缺人了?华为原来这么容易就进了...
华为是大企业,是不是很难进去啊?” “在华为做软件测试,能得到很好的发展吗? 一进去就有9.5K,其实也没有想的那么难” 直到现在,心情都还是无比激动! 本人211非科班,之前在字节和腾…...
PLC/DCS系统常见的干扰现象及判断方法
一般来说,常见的干扰现象有以下几种: 1.系统发指令时,电机无规则地转动; 2.信号等于零时,数字显示表数值乱跳; 3。传感器工作时,DCS/PLC 采集过来的信号与实际参数所对应的信号值不吻合,且误…...
c++ 11标准模板(STL) std::map(四)
定义于头文件<map> template< class Key, class T, class Compare std::less<Key>, class Allocator std::allocator<std::pair<const Key, T> > > class map;(1)namespace pmr { template <class Key, class T, clas…...
6.开源非对称加密算法SM2实现
6.开源非对称加密算法SM2实现 前期内容导读: 开源加解密RSA/AES/SHA1/PGP/SM2/SM3/SM4介绍开源AES/SM4/3DES对称加密算法介绍及其实现开源AES/SM4/3DES对称加密算法的验证实现开源非对称加密算法RSA/SM2实现及其应用开源非对称加密算法RSA实现 1. 开源组件 非对称秘…...
Toolformer and Tool Learning(LLMs如何使用工具)
大模型的能力让学术和工业界都对通用人工智能的未来充满幻想,在前一篇博文中已经粗略介绍, Augmented Language Models(增强语言模型) ALM的两大思路是推理和工具,本篇博文整理两篇关于Toolformer或Tool Learning的论…...
029:Mapbox GL绘制铁路黑白交替的线段
第029个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+mapbox中加载数据显示铁路标识的那种黑白交替的线段。 直接复制下面的 vue+mapbox源代码,操作2分钟即可运行实现效果 文章目录 示例效果配置方式示例源代码(共94行)相关API参考:专栏目标示例效果 配置方式 1)…...
结对编程 --- 大部分程序员喜欢的编程方式
一、介绍 结对编程起源时间可以追溯到 1990 年代早期。这种编程方法最初由 Jim Highsmith 和 Alistair Cockburn 等人提出。后来,Kent Beck 和 Ward Cunningham 等人将其发展成为一种敏捷开发方法,被称为“极限编程”(Extreme Programming&am…...
kubernetes-informer机制
一、概念 informer 是 client-go 中的核心工具包,在kubernetes中,各个组件通过HTTP协议跟 API Server 进行通信。如果各组件每次都直接和API Server 进行交互,会给API Server 和ETCD造成非常大的压力。在不依赖任何中间件的情况下࿰…...
LeetCode 2451. Odd String Difference【字符串,哈希表】简单
本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章…...
切片工具tippecanoe的全网最详细的解释
1.下载和安装 tippecanoe工具是mapbox官方提供的一个服务端切片工具,因此它是运行在服务器上的,它比较友好的支持mac和linux机器。对于windows来讲,就比较麻烦了。 首先对于mac系统,你只需配置好自己的homebrew,保证homebrew能够正常下载东西。 然后只需要一个命令: …...
Linux系统初始化命令的备忘单,Linux运维工程师收藏!
在管理和维护Linux系统时,有一些常用的命令可以帮助您进行系统初始化和配置。这些命令涵盖了各种任务,包括系统设置、用户管理、软件安装和网络配置等。 本文将为您提供一个Linux系统初始化命令的备忘单,以便在需要时方便查阅和使用。 系统设…...
五月最近一次面试,被阿里P8测开虐惨了...
都说金三银四涨薪季,我是着急忙慌的准备简历——5年软件测试经验,可独立测试大型产品项目,熟悉项目测试流程...薪资要求?5年测试经验起码能要个20K吧 我加班肝了一页半简历,投出去一周,面试电话倒是不少&a…...
工业机器视觉缺陷检测工作小结
工业机器视觉检测工作小结 (因为网上没有很系统的讲义和文档,都是零零散散的,因此,我自己尝试着总结一下、仅供参考) 你想知道的大概率在这都可以找到、相机的了解镜头的了解光源的了解传统算法DL深度学习方法 &#…...
技术笔记:默默耕耘,赢得铁粉的秘密策略!
目录 第一步:真实实践,价值分享第二步:高质量文章的撰写第三步:积极互动,回复评论和留言第四步:定期更新和持续学习第五步:参与技术社区第六步:社区问答和问题解答总结 导语…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...
【Linux】shell脚本忽略错误继续执行
在 shell 脚本中,可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行,可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令,并忽略错误 rm somefile…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
k8s业务程序联调工具-KtConnect
概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...
视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...
