当前位置: 首页 > news >正文

面试中常问的mysql数据库指令【杭州多测师_王sir】

数据库中的修改表结构、增删改查、用户权限操作
DDL ==》数据库定义语言   create database,create table  drop table
DML ==》数据库操作语言   insert into,delete from,update set,
DQL ==》数据库查询语言   select .... from....
create database dcs;
use dcs;
show tables;  查看所有的表
desc 表名;   ==》description描述一个表的结构
mysql数据库的基本的数据类型:
1)文本型    varchar,char
2)数值型    int,bigint(存手机号码),float浮点
3)日期型    date,date_format(日期格式化) 
mysql数据库的约束类型:
1)主键约束   primary key
2)自增长约束   auto_increment
3)非空约束   not null
4)默认值约束   default
5)外键约束  foreign key
修改表结构
alter table dcs rename dcs1
altar table dcs add age int(20)
altar table dcs add age int(20) after id
alter table dcs change age sex int(1) primary key auto_increment
alter table dcs modify sex int(1) after id
alter table dcs drop sex  ==》删除一个字段
mysql数据库里面的增
insert into 表名(字段1,字段2,字段3)values(值1,值2,值3) ==》增加一个
insert into 表名(字段1,字段2,字段3)values(值1,值2,值3),(值1,值2,值3)  ==》增加多个值
insert into 表名 value (值1,值2,值3)  ==》值对应的数量和字段的数量必须是一致
insert into 表名 value (值1,值2,值3),(值1,值2,值3)==》增加多个值
mysql数据库里面的删
delete from表名 where id =xxx
truncate 表名
drop table 表名
区别:delete只删除符合条件的数据,不删除表结构和定义,truncate快速删除表的所有数据,不删除表的结构,drop table是删除表结构和定义等等
mysql数据库里面的改 (同一个字段和就是用or,不同的字段和就是用and)
面试题:需要把student表当中成绩不合格和没有成绩的改为80分
update student set score=80 where score <60 or score is null 
mysql数据库里面的查
select * from student   ==》查所有的数据
select id,age,name from student  ==》通过字段进行过滤
select * from student where age >25  and  age <30
select * from student where age >=25  and  age <=30
select * from student where age between 25 and 30
select * from student limit 10  ==》查表的前10行
select * from student limit 0,10
select * from student limit 1,4  ==》查2-5行
select * from student limit 18,6  ==》查19-24行
select * from student order by score desc limit 10;  ==》通过分数降序排序并且查前10行
select * from student where name like “zhang%”  ==》张姓开头的
select * from student where name like “%zhang%” ==》张姓在中间的
select * from student where name like “%zhang”  ==》张姓结尾的
mysql数据库当中的聚合函数
count ==》count(*)和 count(1),count(字段)  ==》count(1)性能会好点
distinct  ==》去重
sum  ==》求和
avg  ==》求平均
max ==》最大
min ==》最小
排序函数   desc ==》descend下降    asc ==》ascend上升
select * from student order by score desc   ==》降序排序
select * from student order by score asc   ==》升序排序
分组函数  ==》看到每一个班级,每一个部门,每一个开头的都需要分组
select class,count(*) from student group by class  ==》查每一个班级的人数总数和班级名称
1)先分组再筛选
求出每一个班级的数学成绩总分大于300分的班级名称和总分数
select class,sum(score) from student group by class having sum(score)>300
2)先筛选再分组
求出每一个班级中男生的班级名称和总分数
select class,sum(score) from student where sex=”男” group by class
3)先筛选再分组再筛选
求出每一个班级中男生的数学成绩总分大于300分的班级名称和总分数
select class,sum(score) from student where sex=”男” group by class having sum(score)>300
where和having之间的区别:
1)group by后面只能接having不能接where
2)where后面是可以接group by,表示先筛选再分组
3)where和having的作用非常相似,都是用来过滤条件的
多表连接【超级重点-需要背诵】
1)基本连接
select * from aa,cc where aa.id = cc.sid
2)内连接(求出2个表的交集部分)
select * from aa inner join cc on aa.id = cc.sid 
3)左连接(以左表为主,左表数据会全部显示,然后右边没有的数据会补null处理)
select * from aa left join cc on aa.id = cc.sid 
4)右连接(以右表为主,右表数据会全部显示,然后左边没有的数据会补null处理)
select * from aa right join cc on aa.id = cc.sid
5)硬连接(机械的拼接,aa表的字段数量必须和cc表的字段数量需要一致)
select * from aa union select * from cc 
6)嵌套=(子查询)
求出张三的成绩?
aa表 ==》有张三的学号id,姓名name
cc表 ==》有张三的学号sid,成绩score
select id from aa where name = “zhangsan”  ==》求出张三的id
select score from cc where sid = (select id from aa where name = “zhangsan”)
7)嵌套in(子查询,in后面可以接一个集合)
select score from cc where sid in (select id from aa where name = “zhangsan”)
8)临时表
select * from aa inner cc on aa.id = cc.sid  ==》设置为临时表t
select t.score from (select * from aa inner cc on aa.id = cc.sid)t where t.name = “zhangsan”
用户权限操作
grant all privileges on *.* to “root”@”%” identified by “123456”
5. 数据库中的视图、索引、存储过程
视图
面试题:你对于视图的理解?
1)视图是基于基础表创建的,然后对视图进行增删改查的操作也会影响到基础表,对基础表进行增删改查的操作也会影响到视图
2)视图的作用? ==》可以对一些敏感信息和数据进行屏蔽,保护数据的安全
索引
分为普通索引,唯一索引,主键索引,联合索引
索引的作用:加快表数据查询的速度,像书的目录一样做一个检索的功能
存储过程
存储过程的作用:可以通过自定义存储过程写sql语句和逻辑,批量的造测试的数据
存储过程的语法:
create procedure dcs() 
begin
#关于sql语句,增删改查的逻辑
end
call dcs()   #调用存储过程

相关文章:

面试中常问的mysql数据库指令【杭州多测师_王sir】

数据库中的修改表结构、增删改查、用户权限操作DDL 》数据库定义语言 create database&#xff0c;create table drop tableDML 》数据库操作语言 insert into&#xff0c;delete from&#xff0c;update set&#xff0c;DQL 》数据库查询语言 select .... from....crea…...

深度学习驱动的智能化革命:从技术突破到行业实践

第一章 深度学习的技术演进与核心架构 1.1 从浅层网络到深度学习的范式转变 深度学习的核心在于通过多层次非线性变换自动提取数据特征,其发展历程可划分为三个阶段:符号主义时代的规则驱动(1950s-1980s)、连接主义时代的浅层网络(1990s-2000s)以及深度学习时代的端到端…...

基于编译器特性浅析C++程序性能优化

最近在恶补计算机基础知识&#xff0c;学到CSAPP第五章的内容&#xff0c;在这里总结并且展开一下C程序性能优化相关的内容。 衡量程序性能的方式 一般而言&#xff0c;程序的性能可以用CPE&#xff08;Cycles Per Element&#xff09;来衡量&#xff0c;其指的是处理每个元素…...

服务器上通过ollama部署deepseek

2025年1月下旬&#xff0c;DeepSeek的R1模型发布后的一周内就火了&#xff0c;性能比肩OpenAI的o1模型&#xff0c;且训练成本仅为560万美元&#xff0c;成本远低于openAI&#xff0c;使得英伟达股票大跌。 下面我们来看下如何个人如何部署deepseek-r1模型。 我是用的仙宫云的…...

Android Coil总结

文章目录 Android Coil总结概述添加依赖用法基本用法占位图变形自定义ImageLoader取消加载协程支持缓存清除缓存监听 简单封装 Android Coil总结 概述 Coil 是一个用于 Android 的 Kotlin 图像加载库&#xff0c;旨在简化图像加载和显示的过程。它基于 Kotlin 协程&#xff0…...

《安富莱嵌入式周报》第351期:DIY半导体制造,工业设备抗干扰提升方法,NASA软件开发规范,小型LCD在线UI编辑器,开源USB PD电源,开源锂电池管理

周报汇总地址&#xff1a;嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版&#xff1a; https://www.bilibili.com/video/BV16C95YEEZs 《安富莱嵌入式周报》第351期&#xff1a;DIY半导体…...

Redis在人员管理系统中的应用示例

用户会话管理 场景&#xff1a;用户登录后存储会话信息&#xff0c;支持多服务器共享 实现&#xff1a; 用户登录成功后&#xff0c;生成唯一Token&#xff08;如JWT&#xff09;&#xff0c;作为Redis的Key Value存储用户ID、角色、权限等信息&#xff0c;设置过期时间&…...

The Wedding Juicer POJ - 2227

采取从外层边界&#xff0c;一步一步向内部拓展的策略&#xff0c;具体来说&#xff0c;一开始将最外面一层的点加入队列&#xff0c;并标记这些点的坐标已经被访问 取出队列中高度最低的点&#xff0c;将其弹出&#xff0c;查看其上下左右的点&#xff0c;如果新点没有被访问…...

# 深入理解RNN(一):循环神经网络的核心计算机制

深入理解RNN&#xff1a;循环神经网络的核心计算机制 RNN示意图 引言 在自然语言处理、时间序列预测、语音识别等涉及序列数据的领域&#xff0c;循环神经网络(RNN)一直扮演着核心角色。尽管近年来Transformer等架构逐渐成为主流&#xff0c;RNN的基本原理和思想依然对于理…...

分布式锁—6.Redisson的同步器组件

大纲 1.Redisson的分布式锁简单总结 2.Redisson的Semaphore简介 3.Redisson的Semaphore源码剖析 4.Redisson的CountDownLatch简介 5.Redisson的CountDownLatch源码剖析 1.Redisson的分布式锁简单总结 (1)可重入锁RedissonLock (2)公平锁RedissonFairLock (3)联锁MultiL…...

同步 Fork 仓库的命令

同步 Fork 仓库的命令 要将您 fork 的仓库的 main 分支与原始仓库&#xff08;fork 源&#xff09;同步&#xff0c;您可以使用以下命令&#xff1a; 首先&#xff0c;确保您已经添加了原始仓库作为远程仓库&#xff08;如果尚未添加&#xff09;&#xff1a; git remote add…...

基于PySide6的CATIA零件自动化着色工具开发实践

引言 在汽车及航空制造领域&#xff0c;CATIA作为核心的CAD设计软件&#xff0c;其二次开发能力对提升设计效率具有重要意义。本文介绍一种基于Python的CATIA零件着色工具开发方案&#xff0c;通过PySide6实现GUI交互&#xff0c;结合COM接口操作实现零件着色自动化。该方案成…...

OpenManus 的提示词

OpenManus 的提示词 引言英文提示词的详细内容工具集的详细说明中文翻译的详细内容GitHub 仓库信息背景分析总结 引言 OpenManus 是一个全能 AI 助手&#xff0c;旨在通过多种工具高效地完成用户提出的各种任务&#xff0c;包括编程、信息检索、文件处理和网页浏览等。其系统提…...

Ubuntu-docker安装mysql

只记录执行步骤。 1 手动下载myql镜像&#xff08;拉去华为云镜像&#xff09; docker pull swr.cn-east-3.myhuaweicloud.com/library/mysql:latest配置并启动mysql 在opt下创建文件夹 命令&#xff1a;cd /opt/ 命令&#xff1a;mkdir mysql_docker 命令&#xff1a;cd m…...

Electron桌面应用开发:自定义菜单

完成初始应用的创建Electron桌面应用开发&#xff1a;创建应用&#xff0c;随后我们就可以自定义软件的菜单了。菜单可以帮助用户快速找到和执行命令&#xff0c;而不需要记住复杂的快捷键&#xff0c;通过将相关功能组织在一起&#xff0c;用户可以更容易地发现和使用应用程序…...

理解 JavaScript 中的浅拷贝与深拷贝

在 JavaScript 开发中&#xff0c;我们经常需要复制对象或数组。然而&#xff0c;复制的方式不同&#xff0c;可能会导致不同的结果。本文将详细介绍 浅拷贝 和 深拷贝 的概念、区别以及实现方式&#xff0c;帮助你更好地理解和使用它们。 1. 什么是浅拷贝&#xff1f; 定义 …...

【Java开发指南 | 第三十五篇】Maven + Tomcat Web应用程序搭建

读者可订阅专栏&#xff1a;Java开发指南 |【CSDN秋说】 文章目录 前言Maven Tomcat Web应用程序搭建1、使用Maven构建新项目2、单击项目&#xff0c;连续按两次shift键&#xff0c;输入"添加"&#xff0c;选择"添加框架支持"3、选择Java Web程序4、点击&…...

从0到1入门Linux

一、常用命令 ls 列出目录内容 cd切换目录mkdir创建新目录rm删除文件或目录cp复制文件或目录mv移动或重命名文件和目录cat查看文件内容grep在文件中查找指定字符串ps查看当前进程状态top查看内存kill终止进程df -h查看磁盘空间存储情况iotop -o直接查看比较高的磁盘读写程序up…...

golang 从零单排 (一) 安装环境

1.下载安装 打开网址The Go Programming Language 直接点击下载go1.24.1.windows-amd64.msi 下载完成 直接双击下一步 下一步 安装完成 环境变量自动设置不必配置 2.验证 win r 输入cmd 打开命令行 输入go version...

如何下载和使用Git:初学者指南

&#x1f31f; 如何下载和使用Git&#xff1a;初学者指南 在当今的软件开发中&#xff0c;Git已经成为不可或缺的版本控制系统。无论你是独立开发者还是团队成员&#xff0c;掌握Git的基本操作都能帮助你更高效地管理代码。今天&#xff0c;我将详细介绍如何下载和使用Git&…...

Excel办公必备4个技巧:格式转换、隔列插入、限制编辑、文本数字分离

在日常办公中&#xff0c;Excel是我们使用频率最高的软件之一&#xff0c;但很多人只掌握了最基础的录入和简单计算功能&#xff0c;遇到一些“卡脖子”的小问题就束手无策&#xff0c;不得不手动折腾半天。其实&#xff0c;Excel中隐藏着不少实用的小技巧&#xff0c;能帮你轻…...

不止是收发数据:挖掘常兴串口调试助手V5.01的5个隐藏效率神器(自动回复/进制转换/批量发送)

挖掘常兴串口调试助手V5.01的5个隐藏效率神器 在嵌入式开发领域&#xff0c;串口调试工具早已超越了简单的数据收发功能。常兴串口调试助手V5.01作为一款专业级工具&#xff0c;集成了多项提升开发效率的实用功能。本文将深入解析五个常被忽视但极具价值的隐藏功能&#xff0c;…...

RT-Thread Nano 3.0.3移植STM32F103后,第一个实战:用FinSH组件实现串口命令行调试

RT-Thread Nano 3.0.3移植STM32F103实战&#xff1a;FinSH组件实现串口命令行调试 当你成功将RT-Thread Nano移植到STM32F103开发板后&#xff0c;第一个令人兴奋的里程碑就是让系统真正"活"起来——而FinSH组件正是实现这一目标的完美起点。这个内置的命令行交互工具…...

小红书数据采集系统深度探索:从技术原理到实战落地

小红书数据采集系统深度探索&#xff1a;从技术原理到实战落地 【免费下载链接】XiaohongshuSpider 小红书爬取 项目地址: https://gitcode.com/gh_mirrors/xia/XiaohongshuSpider 在当今数据驱动的时代&#xff0c;小红书作为内容丰富的社交平台&#xff0c;其数据价值…...

3步打造极速安全系统:AtlasOS开源优化方案全解析

3步打造极速安全系统&#xff1a;AtlasOS开源优化方案全解析 【免费下载链接】Atlas &#x1f680; An open and lightweight modification to Windows, designed to optimize performance, privacy and security. 项目地址: https://gitcode.com/GitHub_Trending/atlas1/Atl…...

XU9232A可穿戴设备 电池供电设备 便携式医疗设备

这是一款高度集成的升压转换器&#xff0c;为输出高电压和高效率的应用方案而设计。输入电源可以从一个锂电池或二节串联的碱性电池&#xff0c;而升压到最高18V&#xff1b;工作频率为 1.2MHz&#xff08;典型值&#xff09;。内置典型4A开关晶体管&#xff0c;其组成 DC/DC 升…...

RTX 4090D专属镜像应用场景:短视频MCN机构批量生成口播视频生产系统

RTX 4090D专属镜像应用场景&#xff1a;短视频MCN机构批量生成口播视频生产系统 1. 短视频行业的痛点与解决方案 短视频MCN机构每天面临的最大挑战之一&#xff0c;就是如何高效生产大量高质量的口播视频内容。传统制作流程通常需要&#xff1a; 租用专业摄影棚聘请主播录制…...

2026 ASNT-TC-1A 无损检测 Ⅱ/Ⅲ 级认证指南|API/ASME 认证必备 + 报考实操

一、行业刚需&#xff1a;为何 ASNT-TC-1A 资质是工业检测领域的「硬通货」在石油天然气、压力容器、钢结构焊接等工业领域&#xff0c;无损检测&#xff08;NDT&#xff09;是产品质量保障的核心环节&#xff0c;而ASNT-TC-1A作为美国无损检测学会制定的人员资格鉴定和认证标准…...

AsyncSerial:嵌入式非阻塞串口通信实现

1. AsyncSerial 库深度解析&#xff1a;面向嵌入式实时系统的非阻塞串口通信实现 在嵌入式系统开发中&#xff0c;串口&#xff08;UART/USART&#xff09;通信因其硬件资源占用少、协议简单、调试便捷等优势&#xff0c;始终是固件层最基础且高频使用的外设接口。然而&#xf…...

人体关键点检测实战:如何用OKS和AP评估模型性能(附Python代码示例)

人体关键点检测实战&#xff1a;OKS与AP指标深度解析与Python实现 在计算机视觉领域&#xff0c;人体姿态估计一直是热门研究方向&#xff0c;而准确评估模型性能则是项目落地的关键环节。不同于常规的目标检测任务&#xff0c;人体关键点检测需要更精细的评估体系——这正是OK…...