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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/908452.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MFC图形函数学习05——画椭圆函数

MFC中有一个专门绘制椭圆的函数&#xff0c;其参数与绘制矩形参数相同&#xff0c;实际上所绘制的椭圆就是矩形的内切圆椭圆。 一、绘制椭圆函数 原型&#xff1a;BOOL Ellipse (int x1,int y1,int x2,int y2); 参数&#xff1a;椭圆内切矩形的左上角&#xff08…

Spring3(代理模式 Spring1案例补充 Aop 面试题)

Spring3 代理模式概述介绍什么是代理模式&#xff1f;为什么要使用代理模式&#xff1f;有哪几种代理模式&#xff1f;静态代理基于接口实现的动态代理(JDK自带)基于子类的动态代理 Spring_AOP_01案例补充(添加事务管理)实现完整代码&#xff1a;常规实现&#xff1a;代理实现 …

开源模型应用落地-Qwen2.5-7B-Instruct与TGI实现推理加速

一、前言 目前&#xff0c;大语言模型已升级至Qwen2.5版本。无论是语言模型还是多模态模型&#xff0c;均在大规模多语言和多模态数据上进行预训练&#xff0c;并通过高质量数据进行后期微调以贴近人类偏好。在本篇学习中&#xff0c;将集成 Hugging Face的TGI框架实现模型推理…

Android 使用ninja加速编译的方法

ninja的简介 随着Android版本的更迭&#xff0c;makefile体系逐渐增多&#xff0c;导致make单编模块的时间越来越长&#xff0c;每次都需要半个小时甚至更长时间&#xff0c;其原因为每次make都会重新加载所有mk文件&#xff0c;再生成ninja编译&#xff0c;此完整过程十分耗时…

javaNIO核心知识.中

Channel&#xff08;通道&#xff09; Channel 是一个通道&#xff0c;它建立了与数据源&#xff08;如文件、网络套接字等&#xff09;之间的连接。我们可以利用它来读取和写入数据&#xff0c;就像打开了一条自来水管&#xff0c;让数据在 Channel 中自由流动。 BIO 中的流…

缓存、注解、分页

一.缓存 作用&#xff1a;应用查询上&#xff0c;内存中的块区域。 缓存查询结果&#xff0c;减少与数据库的交互&#xff0c;从而提高运行效率。 1.SqlSession 缓存 1. 又称为一级缓存&#xff0c;mybatis自动开启。 2. 作用范围&#xff1a;同一…

流畅!HTMLCSS打造网格方块加载动画

效果演示 这个动画的效果是五个方块在网格中上下移动&#xff0c;模拟了一个连续的加载过程。每个方块的动画都是独立的&#xff0c;但是它们的时间间隔和路径被设计为相互协调&#xff0c;以创建出流畅的动画效果。 HTML <div class"loadingspinner"><…

【skywalking 】More than 15,000 ‘grammar‘ tokens have been presented. 【未解决请求答案】

问题 skywalking相关版本信息 jdk&#xff1a;17skywalking&#xff1a;10.1.0apache-skywalking-java-agent&#xff1a;9.3.0ElasticSearch : 8.8.2 问题描述 More than 15,000 grammar tokens have been presented. To prevent Denial Of Service attacks, parsing has b…

docker desktop使用ubuntu18.04带图形化+运行qemu

记录一下docker desktop使用ubuntu18.04带图形化命令和使用步骤 1. 下载镜像 参考&#xff1a;【Docker教程】Docker部署Ubuntu18.04(带图形化界面) 命令&#xff1a; docker pull kasmweb/ubuntu-bionic-desktop:1.10.02. 启动镜像 命令&#xff1a; docker run -d -it …

jmeter压测工具环境搭建(Linux、Mac)

目录 java环境安装 1、anaconda安装java环境&#xff08;推荐&#xff09; 2、直接在本地环境安装java环境 yum方式安装jdk 二进制方式安装jdk jmeter环境安装 1、jmeter单机安装 启动jmeter 配置环境变量 jmeter配置中文 2、jmeter集群搭建 多台机器部署jmeter集群…

ai翻唱部分步骤

模型部署 我是用的RVC进行的训练&#xff0c;也可以使用so-vits-svc。 通过百度网盘分享的文件&#xff1a;RVC-beta 链接&#xff1a;https://pan.baidu.com/s/1c99jR2fLChoqUFqf9gLUzg 提取码&#xff1a;4090 以Nvida显卡为例&#xff0c;分别下载“RVC1006Nvidia”和…

算法笔记-Day09(字符篇)

151. 反转字符串中的单词 class Solution {public String reverseWords(String s) {int lens.length(),count0;StringBuffer tempnew StringBuffer();StringBuffer ansnew StringBuffer();for(int i0;i<len;i){if(s.charAt(i)! &&(i0 || s.charAt(i-1) )){while(i&l…

安科瑞电能质量治理产品在光伏电站的应用有效解决了光伏电站面临的功率因数过低和谐波问题-安科瑞黄安南

1. 概述 随着全球对可再生能源需求的增加&#xff0c;分布式光伏电站的建设和发展迅速。然而&#xff0c;分布式光伏电站的运行过程中面临着一系列问题&#xff0c;比如导致企业关口计量点功率因数过低、谐波污染等。这些问题不仅影响光伏电站自身的运行效率&#xff0c;还会对…

Leetcode137只出现一次的数字|| 及其拓展

简述&#xff1a; 虽然标题是这么描述的&#xff0c;但是我们不是一上来就解这道题&#xff0c;先看一下他的子题和扩展 子题&#xff1a;136. 只出现一次的数字 - 力扣&#xff08;LeetCode&#xff09; 扩展题&#xff1a; 所以我们由易到难&#xff0c;先来看第一道&#x…

leetcode 382.链表随机结点

1.题目要求: 2.题目代码: /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), next(nullptr) {}* ListNode(int x, ListNode *next) : val(x)…

GaussDB Ustore存储引擎解读

目录 一、数据库存储引擎 二、GaussDB Ustore存储引擎 总结 本文将介绍GaussDB中的Ustore存储引擎&#xff0c;包括Ustore的设计背景、特点介绍和适用业务场景等。 一、数据库存储引擎 数据库的存储引擎负责在内存和磁盘上存储、检索和管理数据&#xff0c;确保每个节点的…

使用 Sortable.js 库 实现 Vue3 elementPlus 的 el-table 拖拽排序

文章目录 实现效果Sortable.js介绍下载依赖添加类名导入sortablejs初始化拖拽实例拖拽完成后的处理总结 在开发过程中&#xff0c;我们经常需要处理表格数据&#xff0c;并为用户提供便捷的排序方式。特别是在需要管理长列表、分类数据或动态内容时&#xff0c;拖拽排序功能显得…

机器学习是什么?AIGC又是什么?机器学习与AIGC未来科技的双引擎

&#x1f497;&#x1f497;&#x1f497;欢迎来到我的博客&#xff0c;你将找到有关如何使用技术解决问题的文章&#xff0c;也会找到某个技术的学习路线。无论你是何种职业&#xff0c;我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章&#xff0c;也欢…

.net core 接口,动态接收各类型请求的参数

[HttpPost] public async Task<IActionResult> testpost([FromForm] object info) { //Postman工具测试结果&#xff1a; //FromBody,Postman的body只有rawjson时才进的来 //参数为空时&#xff0c;Body(form-data、x-www-form-urlencoded)解析到的数据也有所…

探索Unity:从游戏引擎到元宇宙体验,聚焦内容创作

unity是实时3D互动内容创作和运营平台&#xff0c;包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者&#xff0c;借助Unity将创意变成现实。提供一整套完善的软件解决方案&#xff0c;可用于创作、运营和变现任何实时互动的2D和3D内容&#xff0c;支持平台包括手机、…