mysql笔记(二)--基本操作

MySQL知识总结二(MySQL基本操作) MySQL基本操作 阅读详情

文章目录

(一) mysql笔记–基本概念
(二) mysql笔记–基本操作
(三) mysql笔记–事务
(四) mysql笔记–索引
(五) mysql笔记–其他操作
(六) mysql笔记–锁

2.1 数据库与表

2.1.1 基本操作
  • 创建 create database db default charset utf8; 删除 drop database db;
  • 查看 数据库 show databases; 表 show tables;
  • 进入数据库 use databasesName;
  • 查看表描述 describe myuser; 或show columns from myuser;
  1. 建表
	CREATE TABLE myuser( id VARCHAR(10),name VARCHAR(10),sex CHAR(1),src VARCHAR(20) );
	-- 指定引擎设置编码(innodb支持事务,myisam不支持)
	create table t1(id int, name char(10)) engine=innodb charset=utf8;
  1. 清表与删表
delete from t1;  -- 清空表内容,但重新插入自增键仍从上一次开始
truncate from t1;  -- 速度更快,自增约束插入重1开始
drop table t1;  -- 删除表
  1. 数值类型
    一共有三种,数字型,时间类型,字符串型
  • 日期按照格式选择,数值与字符串按照大小,超出则会Out of range value报错,字符串类型定长往前放,不定长往后放提高速度,长度大于255使用text存
  • 金钱最好用int/bigint(整数,单位用分,拿出来进行*100换成元)/decimal(类似字符串保存),千万不要直接用浮点,会有精度损失.
  • 文件类型一般存在服务器的文件系统,数据库保存其路径,还有枚举类型,集合等等
  1. 用户与授权
create user ‘用户名@’ip.%’ identified by ‘name’
drop ‘用户名@’ip.%’
grant 权限 on 数据库.表 to ‘用户’@’ip地址’
remove  *.*  from  -- 使用通配符
2.1.2 更改属性
  1. 添加 ADD
	AlTER TABLE user2 ADD PRIMARY KEY(id,name);
	ALTER TABLE user5 ADD UNIQUE(name);
  1. 删除 DROP
AlTER TABLE user2 DROP PRIMARY KEY;
  1. 修改 MODIFY
AlTER TABLE user3 MODIFY id INT PRIMARY KEY;

2.2 插入

  • 完整插入与半插
	INSERT INTO myuser VALUES('01','ls','1','www.rice.cn');
	INSERT INTO myuser(id,name) VALUES(02,’te’), (03,’te2’);
	INSERT INTO myuser(id,name) SELECT * FROM myuser2;

2.3 删除

	DELETE FROM myuser WHERE sex = '0';
	DELETE FROM myuser;  //全删

2.4 修改

	UPDATE myuser SET sex = '1' , age =’18’ WHERE name = 'ls';

2.5 查询与函数

  • 非重复
	select distinct t_depart from teacher;  
  • 区间 between
	select * from score where sc_degree between 60 and 80;  -- 大于等于小于等于


	select s_no,sc_degree,grade from score,grade 
		where sc_degree between low and upp;
  • 集合in与union
	select * from score where sc_degree in(85,86,88); 
	select * from score where s_no in
	( select s_no from student where s_class = "95031");
	
	SELECT s_name AS name, s_sex AS sex, s_birthday AS birthday  FROM student
	UNION
	SELECT t_name AS name, t_sex AS sex, t_birthday AS birthday FROM teacher;
  • 日期函数 now
	select year(s_birthday),month(s_birthday),day(s_birthday) from student;
	select s_name, year(now()) - year(s_birthday) age from student; //年龄计算
  • 排序 asc
	select * from score order by sc_degree asc; //默认升序
	select * from score order by sc_degree desc; //降序
	
	//以班级升序,相同则以成绩降序
	select * from score order by c_no asc, sc_degree desc; 
	返回最大值 max
	select max(sc_degree) from score;  
	select max(s_no) max,min(s_no) min from student;
	选择区间条目 limit
	select * from student limit 0 , 2; //选择 起始行,取的行数
  • 平均值 avg
	select avg(sc_degree) from score;
  • 任意值any与全部all
  1. 查询3-105课号中大于3-245课号中成绩最低的
	select * from score where c_no = '3-105' AND 
		sc_degree > any(select sc_degree from score 
			where c_no = '3-245' ) 
  1. 查询3-15课号中都大于3-245课号中成绩最高的
	select * from score 
		where sc_degree > all (select sc_degree from score 
			where c_no = '3-245') 
		and c_no = '3-105';
  • 分组 group
	select c_no,avg(sc_degree) from score group by c_no; //每个班的平均分
  • 模糊查询 like
	select *  from score where  c_no like '3%'; //多个字符
	select *  from score where  c_no like '3_'; //单个字符
  • 过滤 having
	-- where行级过滤,having组级过滤,与分组搭配使用
	select c_no,avg(sc_degree)  from score group by c_no having count(c_no) > 2;
  • 多表查询与嵌套查询
  1. 连表
	select s_name,sc_degree from student,score
	       where student.s_no = score.s_no;

	select s_name,c_name,sc_degree from course,score ,student
	     where  course.c_no = score.c_no
	     and student.s_no = score.s_no;
  1. 找出95031班的成绩
	select * from score 
		where s_no in ( select s_no from student where s_class = "95031");
  1. 各班平均分
	select c_no,avg(sc_degree) from score 
		where s_no in( select s_no from student where s_class = "95031") 
		group by c_no;
  • 子查询
  1. 查询选修3-105大于109号学生成绩的
	select *  from score
		where c_no = '3-105' 
		and sc_degree > (select sc_degree from score 
			where s_no = '109' and c_no = '3-105');
  1. 查询’张旭’老师任课的学生成绩
	select * from score
	      where c_no in (
	      select c_no from course
	      	where t_no = (select t_no from teacher where t_name = '张旭'));
  1. 查询选课人数大于5的教师名
	select * from teacher
		where t_no in(select t_no from course 
			where c_no in (
				select c_no from score group by c_no having count(s_no) > 5));
  1. 求低于该科平均分的
	select * from score a 
		where sc_degree < (select avg(sc_degree) from score b where a.c_no = b.c_no);

2.6 连接

2.6.1 内连接
	inner join 或 join , 即两张表中的数据通过某个字段查询出相关记录
	select * from person inner join card on person.cardId = card.id;

     在这里插入图片描述

2.6.2 外连接
  • 左连接 left join 或 left outer join,无相等则补NULL

    在这里插入图片描述

  • 右连接 right join 或 right outer join,无相等则补NULL
    在这里插入图片描述

  • 完全外连接 full join 或 full join outer join
        mysql不支持full join 但可以使用左右连接然后使用union即可

在这里插入图片描述

CocosCreator 面试题(十七)Cocos creator 固定宽度与固定高度的底层原理是什么?Cocos creator是如何做适配的? 通过固定宽度或固定高度的适配方式,可以使游戏在不同屏幕尺寸上保持一定的一致性,确保游戏中的元素的大小和位置相对稳定。具体选择哪种适配方式取决于你的游戏需求和设计考虑。在 Cocos Creator 中,你可以通过设置「设计分辨率」和使用相对坐标和布局方式来实现固定宽度或固定高度的适配。总之,Cocos Creator 提供了多种适配方式和工具,帮助你在不同屏幕尺寸上保持游戏画面的一致性。在 Cocos Creator 中,固定宽度和固定高度是两种常见的适配方式,用于在不同屏幕尺寸上保持游戏画面的一致性。 阅读详情

相关推荐

Visual Studio 命令提示符工具区别与使用场景

Visual Studio会提供一系列命令提示符工具,这些工具应用在哪些场景呢?本文进行了相关介绍。

cicada15的博客 3492

数据库练习-多表联查

数据库练习-多表联查 1多表联查 查询所有学生的 name,以及该学生在 score 表中对应的 cno 和 degree 。 SELECT no, name FROM student; +-----+-----------+ | no | name | +-----+-----------+ | 101 | 曾华 | | 102 | 匡明 | | 103 | 王...

qindayong 789

从零到一:YOLOv11高帧率模型在RDK X5上的ONNX转换与部署实战

本文详细介绍了将最新的YOLOv11高帧率模型部署到地平线RDK X5开发板的完整实战流程。内容涵盖从PyTorch模型导出ONNX、地平线工具链环境配置与模型量化编译,到编写高效的板端推理代码,并针对高帧率目标进行了后处理优化。通过实战避坑指南,帮助开发者在RDK X5上实现30FPS以上的实时目标检测。

weixin_29089057的博客 139

Mysql编程练习之二

Mysql编程练习 2.查询教师所有的单位,即不重复的depart列 select depart from teacher group by depart; 注://下面这个SQL是错误的 select * from teacher group by depart; 1.去除重复列 select distinct depart from teacher; 5.查询stud...

说文科技,做有态度的研究。 1203

从像素到光影:解析《黑神话:悟空》中Nanite与Lumen的协同渲染革命

本文深度解析了《黑神话:悟空》如何利用Unreal Engine 5的Nanite与Lumen技术实现渲染革命。Nanite处理亿级多边形几何细节,无需传统LOD优化;Lumen提供全动态全局光照,实现实时光线反弹。两者协同工作,为游戏带来电影级视觉体验,重塑了实时渲染的技术标准与工作流程。

f6g7h8i9j的博客 425

别光看教程了!手把手带你用STM32F103C8T6最小系统板点亮第一个LED(附完整电路图)

本文详细介绍了如何使用STM32F103C8T6最小系统板点亮第一个LED,从硬件连接到软件开发环境搭建,再到编写和下载程序,手把手教你完成STM32入门的第一步。适合初学者快速上手STM32开发,附完整电路图和代码示例。

weixin_28678831的博客 193

MySql专项练习题全套②

MySql专项练习题② CREATE DATABASE db01; USE db01; – 学生表 CREATE TABLE student (Sno VARCHAR(20),Sname VARCHAR(20),Ssex VARCHAR(20),Sbirthday DATETIME,Class VARCHAR(20)); – 添加学生数据 INSERT INTO student VALUE (‘108’,‘曾华’,‘男’,‘1977-09-01’,‘95033’); INSERT INTO student

awei19950103的博客 1797

飞牛fnNAS搭建个人小账本

本文介绍了如何在飞牛NAS上部署ezBookkeeping个人记账应用。该开源工具支持多平台使用,具备双因素认证、多级分类等功能。文章详细讲解了Docker激活、镜像下载、容器部署等步骤,并展示了账户管理、交易记录等基础操作。同时指导用户通过ZeroTier实现远程访问,方便随时随地使用个人记账系统。该方案既保障了数据隐私,又提供了专业记账功能,适合对财务隐私敏感的用户。

dgnankai的专栏 782

查询练习(四十五道题)

题目:设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。 四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表(一)~表(四)所示。用SQL语句创建四个表并完成相关题目。 表1-1数据库的表结构 表(一)Student (学生表)...

weixin_30879169的博客 1万+

【Halcon-1D测量】measure_pairs 函数功能(用于提取垂直于矩形/环形弧主轴的直边对)

HALCON算子measure_pairs是1D测量模块的基础工具,专用于提取垂直于矩形/环形弧主轴的直边对。该算子通过振幅阈值和灰度过渡规则(如positive/negative)进行边对分组,支持_strongest后缀选择最强边缘避免误配对。输出包含边缘坐标、振幅及内外间距(IntraDistance/InterDistance)。关键限制包括仅适用于直边、Sigma需≤0.5×测量长度,且忽略图像域。相比模糊版本算子,它更适用于边缘清晰的简单场景(如电子元件间距测量)。典型应用需配合gen_meas

weixin_45590420的博客 303

基于 STM32 的便携式肌电信号采集与疲劳度评估系统设计与实现

本系统以 STM32 单片机为核心控制器,通过肌电电极采集人体骨骼肌表面的 sEMG 信号,经仪表放大、滤波、AD 采样后送入 MCU 进行时域 / 频域特征提取,利用 RMS(均方根)、MPF(中位频率)、MF(平均频率)等指标实时评估肌肉疲劳状态,最终通过 OLED 显示疲劳等级,并支持蓝牙上传至上位机。

weixin_42300449的博客 103

Oracle练习题(1~19)

1、查询Student表中的所有记录的Sname、Ssex和Class列。 2、查询教师所有的单位即不重复的Depart列。 3、查询Student表的所有记录。 4、查询Score表中成绩在60到80之间的所有记录。 5、查询Score表中成绩为85,86或88的记录。 6、查询Student表中“95031”班或性别为“女”的同学记录。 7、以...

weixin_30834019的博客 336

ConvNeXt 系列改进:引入大核注意力(LKA)替换 7×7 深度卷积,涨点 2.1%

LSKA替换7×7深度卷积,在ImageNet分类任务上实现2.1%的显著提升,参数量仅增加1M。LSKA的四层1D分解将计算复杂度从O(k²)降至O(k),21×21大核的计算量仅相当于原版7×7的1.7倍,实现了感受野与计算成本的完美平衡。部署友好度极高:LSKA模块在TensorRT FP16量化后延迟仅1.2ms,精度损失<0.1%,远优于Transformer类模型。下游任务全面领先。

ZXSXJ的博客 699

MySQL 入门学习笔记(二) 基本操作

数据库和表增删查改基本操作

qq_29582173的博客 517

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

MYSQL基础笔记(二)-SQL基本操作

SQL基本操作 基本操作:CRUD,增删改查   将SQL的基本操作根据操作对象进行分类:   1、库操作   2、表操作   3、数据操作 库操作: 对数据库的增删改查   新增数据库:   基本语法: 1 Create database 数据库名字[库选项];   库选项:用来约束数据库,分为两个选项:1、字符集设定:charset/character set 具...

weixin_30682127的博客 87

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

MySQL使用笔记(二)数据库基本操作

By francis_haoDec 11,2016 数据库是什么 数据库是什么呢?对于MySQL来说,数据库是存储数据库对象的容器,参考[1]中的简单解释是:数据库是一个拥有特定排放顺序的文件柜,而数据库对象则是存放在文件柜中的各种文件。 数据库对象的种类: 表 视图 存储过程 函数 触发器 事件 也就是说,创建一个数据库之后,可以在里面存放上面列举的几种对象种类。 ...

weixin_30414635的博客 140

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

MySQL学习笔记(三)在命令模式下———表的基本操作(二)

文章目录表的查询操作基础查询条件查询高级查询聚合函数总结: 表的查询操作 基础查询 创建数据表和表结构的说明 CRETAE TABLE 数据表名称 ( 字段名1 数据类型 COMMENT ‘类型说明’ … 字段n 数据类型 COMMENT ‘类型说明’ ); 2. 查询所有字段 SELECT * FROM 数据表名称; 查询自定义字段 SELECT 指定字段1, ...

今天写多少 422

MySQL(学习笔记二)数据库/表基本操作

列级约束:在定义列的同时定义约束语法:列定义 约束类型,表级约束:在定义了所有列之后定义的约束语法:列定义[CONSTRAINT 约束名] 约束类型(列名)约束名的取名规则推荐采用:表名_列名_约束类型简介约束可以在创建表时就定义,也可以在创建完后再添加。

Sugger_99的博客 270

MYSQL 学习笔记二 数据库引擎与数据表的基本操作

查看系统所支持引擎类型  SHOW ENGINES \G; MYSQL 5.1.71 支持5种 存储引擎: InnoDB,MyISAM 默认引擎,MEMORY,CSV,MRG_MYISAM Support 表示引擎是否可以使用:yes表示可以,NO 表示不能,default 表示当前默认的存储引擎。 从5.5以后默认InnoDB 为默认存储引擎。

SorryILoveYou_的博客 307

【MySQL基础】MySQL基本操作详解

大家好,我是小杨!今天我将详细的为大家介绍MySQL数据库的基本操作,希望大家能够从中收获多多!

小杨的博客 3万+

【MySQL基础】MySQL基础:MySQL基本操作与架构

【MySQL学习】关于mysql的基础知识,重点在于对mysql架构的了解!!

2301_80220607的博客 4466

【MySQL笔记】MySQL库、表的基本操作

本篇博客主要介绍了MySQL库和表的一些基本操作,包括库的创建,修改,删除以及表的创建,修改,删除等!

Origin_life的博客 1737

MySQL所有基本操作详解

一.MySQL的基本操作 首先sql操作中的关键字的是大小写不敏感的,create 和CREATE是一样的。 1.库操作 1. 1查看数据库 show databases; show 和databases 之间有一个或者多个空格 注意是databases而不是database 结尾分号是英文形式,分号在SQL中是表示一行执行+ 代码的,如果语句后面么有分号,那么默认是要一句代码分多行来写(如下图) 下图中是每次执行完一个sql语句之后,会得到的一个反馈,反馈会告诉我们,当前结果有多少行记录,以及

baixian110的博客 9473

MySQL 学习笔记②

本博客内容概述:存储引擎、索引、SQL 优化、视图 / 存储过程 / 触发器、锁、InnoDB 引擎、MySQL 管理。

做笔记,记录学习中遇到的问题。 5756

MySql (二)入门语句和基本操作

文章目录MySQL的基本操作增删改查 mysql的入门语句: 查看服务器下的库 show databases; 创建库(数据库被创建后它的名字是不可以更改的) create database 数据库名; 2.1.插看当前所在的库 select database(); 删除库 drop 数据库名; 选中指定的库 use 数据库名; 最简单的建表语句 crea...

qq_43952245的博客 3039

MySQL数据库基本操作实验二资源下载

MySQL数据库基本操作实验二资源下载 去发现同类优质开源项目:https://gitcode.com/ 本仓库提供了一个名为“mysql-数据库基本操作-实验二.doc”的资源文件下载。该文件主要内容涵盖了MySQL数据库中常用函数的使用以及基本操作的实践。 资源文件描述 文件名: mysql-数据库基本操作-实验二.doc 内容概述: 该文件详细介绍了MySQL数据库中常用函数的使用方法,并...

gitblog_06605的博客 286
上一篇: mysql笔记(一)--基本概念
下一篇: mysql笔记(三)--事务
Rice__
博客等级 码龄8年 30粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值