SQL 常用语句
目录
我的测试环境
学习文档
进入数据库
基础通关测验
语句-- 查
展示数据库;
进入某个数据库;
展示表:
展示某个表 desc
查询整个表:
查询特定列:
范围查询
等于特定值
不等于
介于
特定字符查询 Like
关键字查询
字符长度查询
特定位置查询
AND OR
排序
查找类似值
查询多个值
合并多表查询结果UNION
查询不同表中的不重复值;
查询某列空值/非空值
查询并计算
非空列的平均值
查询低于平均值的列值
Count 语句
查询某列非空值的值种类
查询某列非空值数量:
查询最大值:
查询最小值
列求和
某列的分组查询:
分组后对组名进行时筛选:having语句
某列以英文的大写查询
某列以英文的小写查询
查询多列 某一列小写/大写
查看某列中各个值的长度
查某个表的时间:
语句--增
创建表
在某个表中插入数据
数值取舍
语句--删
去除重复值
删除固定值
删除整个表
语句--改
改值 update
我的测试环境
MYSQL :MySQL Server 8.0
Navicat
学习文档
SQL常用语句总结 - 知乎 (zhihu.com)
基础篇:数据库 SQL 入门教程-CSDN博客
SQL 教程 | 菜鸟教程
进入数据库
mysql -u root -p

基础通关测验
SQL 测验
语句-- 查
展示数据库;
show databases;

进入某个数据库;
use test1022;
![]()
展示表:

展示某个表 desc


查询整个表:
select * from person02;

查询特定列:
select name,email from person02;
语法重点:select 列名称,列名称 from 表名称;


范围查询
SELECT name FROM person02 WHERE name ='lisi';
SELECT address FROM person02 WHERE address ='beijing';
等于特定值
语法重点:
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值;

不等于

下面的运算符可在 WHERE 子句中使用:
| 操作符 | 描述 |
| = | 等于 |
| <> | 不等于 |
| > | 大于 |
| < | 小于 |
| >= | 大于等于 |
| <= | 小于等于 |
| BETWEEN | 在某个范围内 |
| LIKE | 搜索某种模式 |
介于
SELECT 序号 from person02 where 序号 between 1 and 30;
语法重点:
SELECT 列名称 from 表名称 where 列名称 between 值1 and 值2;
SELECT 列名称 from 表名称 where 列名称 not between 值1 and 值2;

数字的时候前后都包括


SELECT name from person02 where name between 'b' and 'd';
查询字符时包括前边的不包括后边的

特定字符查询 Like
关键字查询
SELECT * from person02 where name like 'lisi';
语法重点:
SELECT * from 表名称 where列名称 like 'lisi';
SELECT * from 表名称 where列名称 like 'li%';

语法重点:
SELECT * from 表名称 where列名称 like '值%'; -匹配开头
SELECT * from 表名称 where列名称 like '%值%'; -匹配特定字符

字符长度查询
语法重点:匹配特定长度
SELECT * from 表名称 where列名称 like '___'; -匹配特定长度的值 _是一个字符

特定位置查询
语法重点:匹配特定位置
SELECT * from 表名称 where列名称 like '___值%';
SELECT * from person02 where name like '__s%';

AND OR
语法重点:
SELECT * FROM 表名称 WHERE 列 运算符 值 AND 列 运算符 值;
select * from person02 where name = 'lisi' and 序号='5';

语法重点:
SELECT * FROM 表名称 WHERE 列 运算符 值 OR 列 运算符 值;
select * from person02 where name = 'lisi' or name='aa';

排序
语法重点:
SELECT * FROM 表名称 ORDER BY 列1,列2 DESC;
默认排序为 ASC 升序,DESC 代表降序。

以字母顺序显示 某列 名称:
select *from person02 order by address;
语法重点:
select *from 表名称 order by 列名称;

查找类似值
语法重点:
SELECT 列名/(*) FROM 表名称 WHERE 列名称 LIKE 值;
select address from person02 where name like 'a%';

查询多个值
语法重点:
SELECT 列名/(*) FROM 表名称 WHERE 列名称 IN (值1,值2,值3);
select * from person02 where address in ('shanghai','beijing');

合并多表查询结果UNION
语法重点:
UNION 语法:
SELECT 列名 FROM 表A
UNION
SELECT 列名 FROM 表B;
UNION 操作符默认为选取不同的值。如果查询结果需要显示重复的值,请使用 UNION ALL。
UNION ALL 语法:
SELECT 列名 FROM 表A
UNION ALL
SELECT 列名 FROM 表B;


查询不同表中的不重复值;
select * from 表1
UNION
select * from 表2;
select * from user01 union select * from user02;

UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
查询某列空值/非空值
语法重点:
select * from person02 where 序号 is null;
select * from person02 where 序号 is not null;

查询并计算
非空列的平均值
语法重点:
select avg(列名) from 表名;
select avg(phone) from user01;

查询低于平均值的列值
语法重点:
select * from 表名 where 列名字 < (select avg(列名字) from 表);
select * from user01 where phone < (select avg(phone) from user01);

Count 语句
语法重点:
select count(*) from 表名;
select count(*) from person02;

查询某列非空值的值种类
语法重点:
SELECT COUNT(DISTINCT 列名) FROM 表名;
select count(distinct address) from person02;

查询某列非空值数量:
语法重点:
SELECT COUNT(列名) FROM 表名;
select count(address) from person02;

查询最大值:
语法重点
select max(列名) from 表名;
select max(phone) from user01;

查询最小值
语法重点
select min(列名) from 表名;
select min(phone) from user01;

列求和
语法重点:
select sum(列名) from 表名;
select sum(phone) from user01;

某列的分组查询:
语法重点:
SELECT 列名A, 统计函数(列名B) FROM 表名 WHERE 查询条件 GROUP BY 列名A;
select address,count(address)from person02
-> where address='beijing'
-> group by address;

分组后对组名进行时筛选:having语句
语法重点:
SELECT 列名A, 统计函数(列名B)
FROM table_name
WHERE 查询条件
GROUP BY 列名A
HAVING 统计函数(列名B) 查询条件;
select name,count(phone) from user01 where phone='10' group by name hav
ing sum(phone) >8;

select lastname,count(phone)
-> from user01
-> where phone='10'
-> group by lastname
-> having sum(phone) >8;

某列以英文的大写查询
语法重点:
select upper(列名称) from 表名称;
select upper(name) from person02;
注: 该查询不会影响源数据 单纯查的时候是这个现实
某列以英文的小写查询
语法重点:
select lower(列名) from 表名;
注: 该查询不会影响源数据 单纯查的时候是这个现实

查询多列 某一列小写/大写
语法重点:
select lower(列名称1),列名称2 from 表名称;
select upper(列名称1),列名称2 from 表名称;
select upper(name),upper(address),email from person02;

查看某列中各个值的长度
语法重点:
select length(列名) from 表名;
select length(name) from person02;

查某个表的时间:
适用于 MySQL
select now();

语句--增
创建表
CREATE TABLE user01
(
name int,
LastName int(255),
FirstName int(255),
email int(255),
phone int(255)
);
也可写为
CREATE TABLE user02
(name int,
LastName int(255),
FirstName int(255),
email int(255),
phone int(255) );
笔记 :
语法重点: 最后一行无,

在某个表中插入数据
insert into person02 values ('22','zhanghds','4657qqcom','beijing');
insert into person02 values ('22','zhanghds','4657qqcom','beijing');
语法重点:insert into 表名称 values ('值',‘值2');

insert into person02 (name) values('王家');
语法重点:insert into 表名称 (列名称) values ('值');

数值取舍
语法重点:
select round(列名,精度) from 表名;

语句--删


去除重复值
select distinct name from person02;
select distinct name from 表名称;
注:该语句只是just 不显示而已,不是在原来库中做删除 因为再查看还是有的

删除固定值
语法重点:
DELETE FROM 表名称 WHERE 列名称 = 值;
select *from person02 order by 序号 asc;

删除整个表
做删除操作一定要谨慎 ,最好是先做好备份!!
DELETE FROM 表名称;
delect from persons;



语法重点:
TRUNCATE TABLE 表名称;
truncate table persons;

删除表
语法重点:
drop tables 表名称;
drop tables persons;


语句--改
改值 update
语法重点:
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值;
update person02 set 序号='00' where email='333@qq.com';

为列名称和表名称指定别名(Alias),别名使查询程序更易阅读和书写。
语法重点:
表别名:
SELECT 表名称/(*) FROM 表名称 AS 别名;
列别名:
SELECT 列名称 as 别名 FROM 表名称;
NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。
语法:
解释
CREATE TABLE 表
(
列 int NOT NULL
);


End
相关文章:
SQL 常用语句
目录 我的测试环境 学习文档 进入数据库 基础通关测验 语句-- 查 展示数据库; 进入某个数据库; 展示表: 展示某个表 desc 查询整个表: 查询特定列: 范围查询 等于特定值 不等于 介于 特定字符查询 Li…...
前端埋点系统之如何用heatmap.js画网页热力图
Hello,大家好。在当今数字化时代,理解用户行为成为了企业成功的关键之一。随着互联网的发展,用户与网站、应用和产品的互动变得愈发复杂而多样化。在这样的背景下,埋点系统成为了洞察用户行为的重要工具之一。而其中的热力图分析&…...
CentOS 7系统下Redis Cluster集群一键部署脚本发布
引言 在大数据和云计算时代,Redis作为一款高性能的键值存储数据库,广泛应用于各种场景。然而,手动搭建Redis Cluster集群过程繁琐且容易出错。为了简化这一过程,本文提供了一个在CentOS 7系统下Redis Cluster集群的一键部署脚本,帮助开发者快速搭建Redis Cluster集群。 …...
自编以e为底的对数函数ln,性能接近标准库函数
算法描述: (1). 先做自变量x的范围检查,不能出现负数和0. 自己使用时,如果能通过其它途径保证自变量为正,那么可以省略这两个判断,提高速度。 (2). 根据IEEE 754浮点数的格式,,则 ln(x)kln(2)ln…...
Java中的日期时间
JDK8之前常用的日期时间类 System.currentTimeMillis():获取当前毫秒数(long类型) java.util.Date:通用Date类 import java.util.Date;Date date new Date(); // 空参构造器 System.out.println(date.getTime()); // 获取当前时…...
位置编码的表示
位置编码的表示位置编码的表示位置编码的表示位置编码的表示位置编码的表示...
0,国产FPGA(紫光同创)-新建PDS工程
国产FPGA正在蓬勃发展,紫光同创FPGA是大家竞赛时经常遇到的一款国产FPGA,本专栏从IP核开始一直到后续图像处理等。 开发板:盘古50K标准板 1,新建PDS工程 点击File(1),然后是New Projects&#…...
c++联合
结构体与联合体的区别 结构体(struct)中所有变量是“共存”的——优点是“有容乃大”,全面;缺点是struct内存空间的分配是粗放的,不管用不用,全分配。 而联合体(union)中是各变量是“互斥”的——缺点就是不够“包容”ÿ…...
Edit Data. Create Cell Editors. Validate User Input 编辑数据。创建 Cell Editors。验证用户输入
Goto Data Grid 数据网格 Edit Data. Create Cell Editors. Validate User Input 编辑数据。创建 Cell Editors。验证用户输入 Get and Modify Cell Values in Code 在代码中获取和修改单元格值 仅当 Grid 及其列已完全初始化时,才使用以下方法。如果需要在表单仍…...
Java 文件操作与IO流
文件 文件有两个概念,在广义来看就是操作系统上对硬件和软件资源抽象为文件。 在侠义上来看,就是我们保存在硬盘上的文件 在这里我们讨论的是狭义的文件,在外面的硬盘上的文件细分又可以分为二进制文件和文本文件,文本文件可以通…...
探索开源MiniMind项目:让大语言模型不再神秘(1)
简介: 声明:本人非此项目作者,仅仅是探索项目,分享项目。如有不妥,请联系我删除! 原项目地址:GitHub - jingyaogong/minimind: 「大模型」3小时完全从0训练26M的小参数GPT,个人显卡即…...
Android 大疆面经
Android 大疆面经 文章目录 Android 大疆面经一面 一面 自我介绍问项目聊了10分钟View的绘制流程MVC,MVP,MVVM的区别view和viewmodel的通信,除了databing还有其他的方式面向对象和面向过程的区别工厂模式和策略模式,哪些框架使用…...
【2024-10-31-2024-11-03】LeetCode刷题——python语法基础题
📝前言说明: ●本专栏主要记录本人的基础算法学习以及LeetCode刷题记录,主要跟随B站作者灵茶山的视频进行学习,专栏中一篇文章为B站对应的一个视频 题目主要为B站视频内涉及的题目以及B站视频中提到的“课后作业”。 ●文章中的理…...
【算法】二分查找
目录 一、概念 二、思路 三、边界问题 一、概念 在一本书中查找某一页,我们总是倾向于先翻到整本书的中间,然后根据当前页数判断我们想要找的页在当前页的左半本中还是右半本中,接着继续翻到剩下半本书的中间...... 这就是二分查找思想在…...
第十五章 Vue工程化开发及Vue CLI脚手架
目录 一、引言 二、Vue CLI 基本介绍 三、安装Vue CLI 3.1. 安装npm和yarn 3.2. 安装Vue CLI 3.3. 查看 Vue 版本 四、创建启动工程 4.1. 创建项目架子 4.2. 启动工程 五、脚手架目录文件介绍 六、核心文件讲解 6.1. index.html 6.2. main.js 6.3. App.vue 一、…...
【Grafana】Grafana 基础入门
Grafana 简介 什么是Grafana Grafana 是一跨平台的开源的可视化分析工具,是目前网络架构和应用分析中最流行的时序数据展示工具,主要用于大规模指标数据的可视化展示。 它是用Go语言开发,可以做数据监控和数据统计,带有告警功能…...
如何获取页面上所有input框
要获取页面上所有的<input>框,你可以使用JavaScript。这通常可以通过查询DOM(文档对象模型)来实现,有几种方法可以做到这一点,包括使用document.querySelectorAll、document.getElementsByTagName或document.get…...
0-ARM Linux驱动开发-字符设备
一、字符设备概述 Linux 系统中,设备被分为字符设备、块设备和网络设备等。字符设备以字节流的方式进行数据传输,数据的访问是按顺序的,一个字节一个字节地进行读取和写入操作,没有缓冲区。例如,终端(/dev…...
使用 Faster Whisper 和 Gradio 实现实时语音转文字
随着人工智能技术的进步,语音识别已经成为最热门的研究领域之一。如何实现高效、准确的实时语音转文字功能,是许多开发者关注的重点。本文将介绍如何使用 Faster Whisper 和 Gradio 这两个强大工具,快速构建一个实时语音转文字应用。 Faster…...
redis v6.0.16 安装 基于Ubuntu 22.04
redis安装 基于Ubuntu 22.04 本文演示如何在ubuntu22.04下,安装redis v6.0.16,并配置测试远程访问。 Step1 更新环境 sudo apt updateStep2 安装redis sudo apt install redis-server -yStep3 启动 sudo systemctl restart redissudo systemctl sta…...
智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...
《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...
解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist
现象: android studio报错: [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决: 不要动CMakeLists.…...
为什么要创建 Vue 实例
核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...
