Mysql常用语法一篇文章速成
文章目录
- 前言
- 前置环境
- 数据库的增删改查
- 查询数据
- 查询所有
- 条件查询
- 多条件查询
- 模糊查询
- 分页查询
- 排序查询
- 分组查询
- ⭐️⭐️关联查询
- 关联分页查询
- 添加数据insert
- 插入多条记录
- 不指定列名(适用于所有列都有值的情况)
- 更新数据
- 更新多条记录
- 更新多个列
- 更新不满足条件的记录
- 删除
- 统计数据函数(sum 、count)
前言
本篇文章旨在为初学者提供一个快速入门Mysql的指南,帮助读者在短时间内了解MySQL的核心语法和基本功能。逐步深入到表的操作、数据的增删改查(CRUD)以及常见的查询技巧。
前置环境
安装Mysql5.7或8.0mysql官网
安装数据库可视化软件navicatnavicat官网
进入navicat
点击链接 新建链接

新建数据库并且相同操作在建表
设计表并新建几条数据


数据库的增删改查
查询数据
查询所有
这条语句从 hellosql 表中查询所有列的所有记录。使用 * 表示选择所有列。
SELECT * from hellosql; // 查询某个表所有的数据 返回的是一个列表
条件查询
仅查询 id 列值为 1 的记录。
SELECT * from hellosql WHERE id = 1
多条件查询
查询同时满足 id 为 1 和 no 为 11 的记录。
SELECT * from hellosql WHERE id = 1 AND no = 11
模糊查询
使用 LIKE 进行字符串匹配,% 代表任意字符
SELECT * from hellosql WHERE NAME like '%mou'; 前缀模糊查询
SELECT * from hellosql WHERE NAME like 'zhai%'; 后缀模糊查询
SELECT * from hellosql WHERE NAME like '%ai%';全模糊查询
分页查询
从第二条记录开始,返回两条记录。LIMIT 的第一个参数是起始索引(从 0 开始),第二个参数是返回的记录数
SELECT * from hellosql LIMIT 1,2
排序查询
根据 id 列的值对结果进行升序或降序排列
hellosql 表中选取所有列的数据,并按 id 列降序/升序排列
SELECT * from hellosql order by id DESC
SELECT * from hellosql order by id ASC
分组查询
按 description 列进行分组,并统计每组的记录数,HAVING 用于筛选符合条件的分组结果。
SELECT count(*) from hellosql GROUP BY description HAVING description = 'wuhuman'
⭐️⭐️关联查询
进行左连接查询,返回 hellosql 表和 role 表中匹配的记录
常用的左连接(LEFT JOIN 或 LEFT OUTER JOIN)的 SQL 语法格式如下:
SELECT columns FROM table_a AS a LEFT JOIN table_b AS b ON a.join_column = b.join_column;
语法详解:
- SELECT columns:指定要选择的列,可以是表中的所有列(
*)或特定列(如a.column_name, b.column_name)。 - FROM table_a AS a:指定左表(
table_a)并给它一个别名(a),便于后续引用。 - LEFT JOIN table_b AS b:指定右表(
table_b)并给它一个别名(b),表示进行左连接。 - ON a.join_column = b.join_column:定义连接条件,说明两个表中哪些列用于匹配记录。
SELECT hellosql.*,role.role FROM hellosql left JOIN role ON role.h_id = hellosql.id

关联分页查询
在关联查询的基础上加上返回前两条记录 也就是可以分页
SELECT hellosql.*,role.role as role FROM hellosql left JOIN role ON role.h_id = hellosql.id limit 0,2
添加数据insert
语句向 hellosql 表中插入一条新记录。指定了 name、description 和 no 列的值。
INSERT INTO `hellosql` ( `name`, `description`, `no` )
VALUES( 'wuhuman3333', 'zhaimou', 999 )
插入多条记录
INSERT INTO hellosql (name, description, no) VALUES ('wuhuman1', 'description 1', 1), ('wuhuman2', 'description 2', 2), ('wuhuman3', 'description 3', 3);
不指定列名(适用于所有列都有值的情况)
INSERT INTO hellosql
VALUES (NULL, 'wuhuman4', 'description 4', 4);
如果插入的值为所有列,并且表中有自增的主键(通常是 NULL),可以省略列名,直接插入值
更新数据
这条语句将 id 为 1 的记录的 name 列更新为 zhaimou666
UPDATE hellosql
SET NAME = 'zhaimou666'
WHEREid = 1
更新多条记录
语句将所有 description 为 'example description' 的记录的 no 列的值加 1。
UPDATE hellosql SET no = no + 1 WHERE description = 'example description';
更新多个列
这条语句将 id 为 2 的记录的 name 和 description 列同时更新为新的值。
UPDATE hellosql SET name = 'new_name', description = 'new description' WHERE id = 2;
更新不满足条件的记录
这条语句将所有 description 列值为 NULL 的记录更新为 'default description'
UPDATE hellosql SET description = 'default description' WHERE description IS NULL;
删除
这条语句将删除 id 为 2 的记录。
DELETE from hellosql where id = 2;
或根据条件删除
DELETE FROM hellosql WHERE no < 5;
删除全部
truncate table yourtablename
统计数据函数(sum 、count)
select count(*) from hellosql;select sum(goods) from hellosql;
文章到这里就结束了 会持续更新技术文章
相关文章:
Mysql常用语法一篇文章速成
文章目录 前言前置环境数据库的增删改查查询数据查询所有条件查询多条件查询模糊查询分页查询排序查询分组查询⭐️⭐️关联查询关联分页查询 添加数据insert插入多条记录不指定列名(适用于所有列都有值的情况) 更新数据更新多条记录更新多个列更新不满足条件的记录 删除统计数…...
Intel nuc x15 重装系统步骤和注意事项(LAPKC71F、LAPKC71E、LAPKC51E)
注意本教程的对象是11代CPU,英伟达独显的nuc x15,不是12代arc显卡的。 x15安装win11 24h2,如果在装系统时联网,windows自动下载的最新驱动有兼容问题,会导致【英特尔显卡控制中心】装不上,或者【英特尔nuc…...
Linux之实战命令59:iwlist应用实例(九十三)
简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布:《Android系统多媒体进阶实战》🚀 优质专栏: Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏: 多媒体系统工程师系列【…...
数据库_SQLite3
下载 1、更新软件源: sudo apt-get update 2、下载SQLite3: sudo apt-get install sqlite3 3、验证: sqlite3启动数据库,出现以下界面代表运行正常。输入 .exit 可以退出数据库 4、安装sqlite3的库 sudo apt-get install l…...
.Net Framework里演示怎么样使用StringBuilder、Math.Min和String.Format
StringBuilder、Math.Min和String.Format, 这几个功能都是我们经常使用的功能, 但是怎么样正确地使用,还是得向微软的开发人员学习。 他们在写.Net Framework的源码时,就会大量使用。 因此,我们可以多看看这分代码,就可以理解他们怎么样使用的。 他们的使用方式,一…...
Oracle创建存储过程,创建定时任务
在Oracle数据库中,创建存储过程和定时任务(也称为调度任务)是常见的数据库管理任务。以下是创建存储过程和定时任务的步骤和说明。 创建存储过程 创建存储过程的sql脚本 create or replace procedure 存储过程名称... is begin脚本逻辑...…...
<HarmonyOS第一课>应用/元服务上架的课后习题
善者,吾善之; 不善者,吾亦善之,德善。 信者,吾信之; 不信者,吾亦信之,德信。 圣人在天下,歙歙焉为天下浑其心,百姓皆注其耳目,圣人皆孩之。 通过&…...
【Python】探索函数的奥秘:从基础到高级的深度解析(下)
目录 🍔 函数的参数进阶 1、函数的参数 2、函数的参数类型(调用) 2.1 位置参数 2.2 关键词参数(Python特有) 3、函数定义时缺省参数(参数默认值) 4、不定长参数 4.1 不定长元组(位置)参数…...
ima.copilot:智慧因你而生
在数字化时代,信息的获取、处理和创作已经成为我们日常工作和学习中不可或缺的一部分。腾讯公司推出的ima.copilot(简称ima)正是为了满足这一需求,它是一款由腾讯混元大模型提供技术支持的智能工作台产品,旨在通过智能…...
Vue-$el属性
原博客地址:深入 Vue.js 的心脏:全面剖析 $el 属性_vue $el-CSDN博客 目录 1 $el是什么 1.1 $el本质 1.2 访问$el时机 1.3 $el与模板的关系 2 $el使用场景 2.1 集成第三方库 2.2 操作DOM元素样式 2.3 处理焦点和事件 2.4 实现自定义指令 3 $e…...
LLC Power Switches and Resonant Tank 笔记
1.概述 上面是一个典型的LLC电路。注意Lm是励磁电感,就是次级线圈空载时的主变压器电感,据说在计算谐振频率时无需关心。然后,作为DCDC电源,它通过调整谐振频率,来改变输出的电流。负载越大,频率越低&#…...
Python 如何在 Web 环境中使用 Matplotlib 进行数据可视化
Python Matplotlib 在 Web 环境中的可视化 数据可视化是数据科学和分析中一个至关重要的部分,它能帮助我们更好地理解和解释数据。在现代应用中,越来越多的开发者希望能够将数据可视化结果展示在网页上。Matplotlib 是 Python 中最常用的数据可视化库之…...
C#-数组:一维数组、二维数组、交错数组
数组:声明初始化过后,就不能在原有的基础上进行 添加 或者 删除 了 一:一维数组 一般将一维数组简称为数组 1.1 数组的声明 int[] arr1; 没有分配房间。初始化后就分配房间了int[] arr2 new int[5]; 存在默认值,为0int[] arr3…...
动态规划应该如何学习?
动态规划如何学习 参考灵神的视频和题解做的笔记(灵神YYDS,以后也都会用这套逻辑去思考) 枚举选哪个: 动态规划入门:从记忆化搜索到递推_哔哩哔哩_bilibili 746. 使用最小花费爬楼梯 - 力扣(LeetCode&a…...
【力扣 + 牛客 | SQL题 | 每日4题】牛客SQL热题210,213,212,219
1. 力扣SQL1076:项目员工2 1.1 题目: 表:Project ---------------------- | Column Name | Type | ---------------------- | project_id | int | | employee_id | int | ---------------------- (project_id, employee_id) 是…...
Qt 应用开发之 MVC 架构
在Qt应用开发中,MVC(Model-View-Controller)架构确实是一种常用的设计模式,它通过将应用程序的业务逻辑、数据展示和用户交互分离开来,显著提高了代码的可维护性和可扩展性。以下是MVC架构在Qt应用开发中的原理阐述&am…...
python之字符串总结
字符串(str) 对于字符串的学习,我整理了网上的一些资料,希望可以帮助到各位!!! 概述 由多个字母,数字,特殊字符组成的有限序列 字符串的定义:可以使用一对…...
Flutter鸿蒙next 封装 Dio 网络请求详解:登录身份验证与免登录缓存
✅近期推荐:求职神器 https://bbs.csdn.net/topics/619384540 🔥欢迎大家订阅系列专栏:flutter_鸿蒙next 💬淼学派语录:只有不断的否认自己和肯定自己,才能走出弯曲不平的泥泞路,因为平坦的大路…...
sql server复制一张表(表结构或表数据)SQL语句整理
1. 复制表结构及数据到新表 CREATE TABLE 新表 SELECT * FROM 旧表;这种方法会复制 旧表 中的所有内容到 新表,但新表不会保留原表的主键、自动递增等属性。为了保持这些属性,需要使用 ALTER 语句进行后续处理 2. 只复制表结构到新表 使用条件始终为假…...
c语言-进位计数制
文章目录 一、进位计数制是什么?二、c语言1.二进制转十进制2.十进制转二进制 一、进位计数制是什么? 进位计数制简称进制,是人类用于计算数量的基本规则。 可使用数字符号的数目称为基数或底数,基数个数为n个,即可称n…...
未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
拉力测试cuda pytorch 把 4070显卡拉满
import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试,通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小,增大可提高计算复杂度duration: 测试持续时间(秒&…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...
mac 安装homebrew (nvm 及git)
mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...
OD 算法题 B卷【正整数到Excel编号之间的转换】
文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的:a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...
【Linux】自动化构建-Make/Makefile
前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...
WebRTC调研
WebRTC是什么,为什么,如何使用 WebRTC有什么优势 WebRTC Architecture Amazon KVS WebRTC 其它厂商WebRTC 海康门禁WebRTC 海康门禁其他界面整理 威视通WebRTC 局域网 Google浏览器 Microsoft Edge 公网 RTSP RTMP NVR ONVIF SIP SRT WebRTC协…...
