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

MySQL单表查询大全【SELECT】

山再高,往上攀,总能登顶;路再长,走下去,定能到达。

Mysql中Select 的用法

  • ------前言------
  • 【SELECT】
    • 0.【准备工作】
      • 0.1 创建一个库
      • 0.2 库中创建表
      • 0.3 表中加入一些数据
    • 1.【查询全部】
    • 2.【查询指定列】
      • 2.1查询指定列
      • 2.2 查询总和
      • 2.3 别名查询
      • 2.4 去重查询
    • 3.【where】
      • 3.1普通条件查询
      • 3.1区间查询
      • 3.2模糊查询
    • 4.【order by】
      • 4.1 排序查询
      • 4.2 分页查询
    • 5.【聚合函数】
      • 5.1 count
      • 5.2 sum
      • 5.3 avg
      • 5.4 max
      • 5.5 min
    • 6.【分组查询】
      • 6.1 group by
      • 6.2 having

------前言------

在MySQL语句中,最重要的莫过于查询了,也就是select的用法,前一篇博客我们只是给大家大概一个思路去学数据库,由库到表再到表中的数据,今天我们说的就是单表查询表中数据,之后再给大家更新多表的联合查询等知识

在此之前为了方便大家可以一起练习,我们先来创建一些数据,以便大家可以知道我们查的是什么,在哪查的

除此之外,还有一些知识,来让我们认识到更全面的查询,大家按照顺序观看即可

【SELECT】

0.【准备工作】

0.1 创建一个库

show databases;		-- 查看库
create database test;		--创建一个名字为test的库

在这里插入图片描述

0.2 库中创建表

use test;		-- 使用名字为test的库
show tables;		-- 查看test库中是否有表
-- 创建一个名字为demoStudent的表格,包含id,名字,年龄,语数英各科成绩 create table demoStudent(		id int,name varchar(20),age int,chinese float,math float,english float);

0.3 表中加入一些数据

-- 插入六条数据insert into demoStudent(id,age,name,chinese,math,english)values(1,17,'张三',66,54,32),(2,17,'李四',22,22,54),(3,18,'王五',12,23,34),(4,17,'陈六',55,44,33),(5,18,'赵七',45,67,86),(6,17,'宋九',22,33,99);

在这里插入图片描述
在这里插入图片描述

1.【查询全部】

-- select * from 表名;
select * from demoStudent;

在这里插入图片描述

2.【查询指定列】

2.1查询指定列

select 列名 from 表名; -- 该行是语法说明
select id,name,chinese from demoStudent;

在这里插入图片描述

2.2 查询总和

那如果我们想查询一下总成绩,又该怎么办呢?
答案也很简单, 我们只需要加一下就好了

select name,chinese+math+english from demoStudent;

在这里插入图片描述

2.3 别名查询

那么我们不想以chinese+math+english为列名当总成绩的表头又该怎么办呢?
这就需要我们所说的别名查询了~

select 列名1,列名2 as 列名2的新名字 from 表名;
select name,chinese+math+english as total from demoStudent;

在这里插入图片描述

2.4 去重查询

在这里插入图片描述

当我们发现有两条语文成绩一样的分数,但是我们只想要不重复的语文成绩,这个时候我们又应该如何?
那就是去重查询了~

select distinct 去重列名 from 表名;
select distinct chinese from demoStudent;

在这里插入图片描述

3.【where】

3.1普通条件查询

-- 在表中查询年龄为18的学生
select * from demoStudent where age = 18;

在这里插入图片描述

-- 查询总成绩小于100的学生
select name,chinese+math+english as total from demoStudent where chinese+math+english<100;

在这里插入图片描述

-- 查询语文成绩大于数学成绩的学生
select * from demoStudent where chinese>math;

在这里插入图片描述

-- 查询语文成绩大于数学成绩而且名字为张三的学生
select * from demoStudent where chinese>math and name='张三';

在这里插入图片描述

3.1区间查询

-- 查询语文成绩在10到50之间的学生
语法:between...and...
select *from demoStudent where chinese between 10 and 50;

在这里插入图片描述

3.2模糊查询

为了给大家演示,我们再插入一条数据

 insert into demoStudent(id,name,age,chinese,math,english) values (7,'张五',17,11,22,33);-- 查询表中所有姓名为张的(姓名几个字行)
select *from demoStudent where name like '张%';
-- 查询名字为什么张的学生(姓名两个字)
select *from demoStudent where name like '_张';
-- 查询名字为张什么的学生(姓名两个字)
select *from demoStudent where name like '张_';
-- 查询名字为张什么什么的学生(姓名三个字)
select *from demoStudent where name like '张__';

在这里插入图片描述

4.【order by】

4.1 排序查询

-- 总分按照从高到低排序 desc
select name,chinese+math+english as total from demoStudent order by total desc;
-- 总分按照从低到高排序 asc
select name,chinese+math+english as total from demoStudent order by total asc;

在这里插入图片描述

4.2 分页查询

-- 查询num1之后到num2的数据
select *from demoStudent order by id asc limit num1,num2;

在这里插入图片描述

5.【聚合函数】

5.1 count

-- 查询数学成绩大于50的有几条
select count(math) from demoStudent where math>50;

在这里插入图片描述

5.2 sum

-- 查询语文总成绩
select sum(chinese) from demoStudent;

在这里插入图片描述

5.3 avg

-- 查询英语的平均成绩
select avg(english) from demoStudent;

在这里插入图片描述

5.4 max

-- 查询英语的最大成绩
select max(english) from demoStudent;

在这里插入图片描述

5.5 min

-- 查询英语的最小成绩
select min(english) from demoStudent;

在这里插入图片描述

6.【分组查询】

6.1 group by

-- 显示不同年龄的个数
select age,count(*) from demoStudent group by age ;

在这里插入图片描述

6.2 having

-- 查询年龄为18的学生有几个
select age,count(*) from demoStudent group by age having age =18;

在这里插入图片描述

今天的内容就到这里啦,内容比较多,大家加油啊!

相关文章:

MySQL单表查询大全【SELECT】

山再高&#xff0c;往上攀&#xff0c;总能登顶&#xff1b;路再长&#xff0c;走下去&#xff0c;定能到达。 Mysql中Select 的用法 ------前言------【SELECT】0.【准备工作】0.1 创建一个库0.2 库中创建表0.3 表中加入一些数据 1.【查询全部】2.【查询指定列】2.1查询指定列…...

考研系列-408真题计算机网络篇(18-23)

写在前面 此文章是本人在备考过程中408真题计算机网络部分&#xff08;2018年-2023年&#xff09;的易错题及相应的知识点整理&#xff0c;后期复习也常常用到&#xff0c;对于知识提炼归纳理解起到了很大的作用&#xff0c;分享出来希望帮助到大家~ # 2018 1.停止-等待协议的…...

卷积神经网络(CNN)之 EfficientNet

在深度学习领域&#xff0c;模型的计算效率与性能之间的平衡一直是一个核心挑战。随着卷积神经网络&#xff08;CNN&#xff09;在图像分类、目标检测等任务中取得显著成果&#xff0c;模型的复杂度和计算需求也急剧增加。2019年&#xff0c;Google Research 提出的 EfficientN…...

【eNSP实战】将路由器配置为DHCP服务器

拓图 要求&#xff1a; 为 office100 和 office200 分别配置地址池 AR1接口配置 interface GigabitEthernet0/0/0ip address 192.168.100.1 255.255.255.0 # interface GigabitEthernet0/0/1ip address 192.168.200.1 255.255.255.0 AR1路由器上创建office100地址池 [AR1…...

工程化与框架系列(35)--前端微服务架构实践

前端微服务架构实践 &#x1f3d7;️ 引言 随着前端应用规模的不断扩大&#xff0c;微服务架构在前端领域的应用越来越广泛。本文将深入探讨前端微服务架构的实现方案、最佳实践和相关工具。 微服务架构概述 前端微服务架构主要包括以下方面&#xff1a; 应用拆分&#xf…...

Windows系统中安装Rust工具链方法

Windows系统中安装Rust工具链方法 在Windows上使用PowerShell的命令来下载rustup-init.exe文件。 此外&#xff0c;安装完成后&#xff0c;需要确保Rust的环境变量生效&#xff0c;可能需要重启终端或手动执行设置路径的命令。然后继续升级pip并安装tiktoken。 总结步骤应该是…...

Postman下载安装及简单入门

一&#xff0e;Postman简介 Postman是一款API测试工具&#xff0c;可以帮助开发、测试人员发送HTTP请求&#xff0c;与各种API进行交互&#xff0c;并分析响应 二&#xff0e;下载与安装 访问Postman官网&#xff08;https://www.postman.com/&#xff09;&#xff0c;下载适…...

vulnhub靶场之loly靶机

前言 挑战攻克该靶机30分钟 靶机&#xff1a;loly靶机&#xff0c;IP地址为192.168.10.11 攻击&#xff1a;kali&#xff0c;IP地址为192.168.10.6 靶机和攻击机都采用VMware虚拟机&#xff0c;都采用桥接网卡模式 文章涉及的靶机及工具&#xff0c;都可以自行访问官网或者项…...

原生微信小程序实现导航漫游(Tour)

效果&#xff1a; 小程序实现导航漫游 1、组件 miniprogram/components/tour/index.wxml <!--wxml--> <view class"guide" wx:if"{{showGuide}}"><view style"{{guideStyle}}" class"guide-box"><view class&quo…...

LLM论文笔记 25: Chain-of-Thought Reasoning without Prompting

Arxiv日期&#xff1a;2024.5.31机构&#xff1a;Google DeepMind 关键词 cot-decoding推理路径pretrain 核心结论 1. LLMs 不需要prompting就可以生成链式推理路径&#xff0c;prompting只是将这些能力显性化的一种手段 2. cot path 往往与更高的model confidence相关&…...

新型XCSSET恶意软件利用增强混淆技术攻击macOS用户

微软威胁情报团队发现了一种新型的XCSSET变种&#xff0c;这是一种复杂的模块化macOS恶意软件&#xff0c;能够感染Xcode项目&#xff0c;并在开发者构建这些项目时执行。 这是自2022年以来的首个已知XCSSET变种&#xff0c;采用了增强的混淆方法、更新的持久化机制以及新的感…...

Redis存数据就像存钱:RDB定期存款 vs AOF实时记账

Redis持久化 ◆ 核心概念1. ◆ 持久化全景图2. ◆ 生产环境黄金法则 ◆ RDB深度优化1. ◆ 生产配置精要2. ◆ 高级触发场景3. ◆ 故障应急方案 ◆ AOF深度解析1. ◆ 7.0版本革命性改进2. ◆ 同步策略深度测试3. ◆ 重写过程优化 ◆ 混合持久化实战1. ◆ 配置示例2. ◆ 数据恢复…...

[C++面试] 关于deque

一、入门 1、deque与vector的区别 deque的迭代器包含以下信息&#xff1a; 当前缓冲区指针&#xff08;current_buffer&#xff09;当前元素在缓冲区内的位置&#xff08;current&#xff09;中控器的位置&#xff08;map&#xff09; 每次移动迭代器时&#xff0c;需检查是…...

施磊老师c++(七)

STL组件 文章目录 STL组件1.整体学习内容2.vector容器3.deque和listdeque--双端队列容器list--链表容器 4.vector,deque,list对比主要内容面经问题 5.详解容器适配器--stack, queue, priority_queue容器适配器stack-栈queue-队列priority_queue-优先级队列总结 6.无序关联容器关…...

八股文——C 语言宏、`volatile`、`static`、动态内存管理、堆与栈的区别

文章目录 1. #&#xff08;字符串化操作符&#xff09;作用&#xff1a;示例&#xff1a; 2. ##&#xff08;符号连接操作符&#xff09;作用&#xff1a;示例1&#xff1a;动态生成变量名 3. volatile 关键字作用&#xff1a;示例&#xff1a; 4. static 关键字作用&#xff1…...

C++初阶——类和对象(三) 构造函数、析构函数

C初阶——类和对象&#xff08;三&#xff09; 上期内容&#xff0c;我们围绕类对象模型的大小计算&#xff0c;成员存储方式&#xff0c;this指针&#xff0c;以及C实现栈和C语言的比较&#xff0c;进一步认识了C的封装特性。本期内容&#xff0c;我们开始介绍类的默认成员函…...

【Function】使用托管身份调用Function App触发器,以增强安全性

推荐超级课程: 本地离线DeepSeek AI方案部署实战教程【完全版】Docker快速入门到精通Kubernetes入门到大师通关课AWS云服务快速入门实战目录 1. 背景介绍2. 设置3. 使用Web应用调用Function App触发器(Node.js示例)4. 执行结果此方法允许您使用托管身份(Managed Identity)调…...

x012-MSP430F249智能步进电动百叶窗_proteus_光敏电阻_步进电机_仿真

https://www.dong-blog.fun/post/1997 46 、智能步进电动百叶窗 基本要求&#xff1a; 用一台步进电机控制百叶窗叶片的旋转&#xff08;正转/反转&#xff09; 用 LED 数码管显示旋转角度 设置按键&#xff1a; 手动/自动切换、手动正转和手动反转&#xff0c;停止/启动键 用一…...

牛客周赛85 题解 Java ABCDEFG

A小紫的均势博弈 判断输入的 n 是奇数还是偶数 import java.io.*; import java.math.*; import java.util.*;public class Main {static IoScanner sc new IoScanner();static final int mod(int) (1e97);static void solve() throws IOException {int nsc.nextInt();if(n%2…...

# RAG 框架 # 一文入门 全链路RAG系统构建与优化 —— 架构、策略与实践

本文全面阐述了RAG系统从数据收集、数据清洗&#xff08;包括领域专有名词处理&#xff09;、智能数据分块与QA对生成&#xff0c;到向量化、向量数据库选择与配置&#xff0c;再到检索方式及重排序&#xff0c;直至整合输出、监控反馈和安全保障的全流程。通过这一完整方案&am…...

【Golang】第二弹-----变量、基本数据类型、标识符

笔上得来终觉浅,绝知此事要躬行 &#x1f525; 个人主页&#xff1a;星云爱编程 &#x1f525; 所属专栏&#xff1a;Golang &#x1f337;追光的人&#xff0c;终会万丈光芒 &#x1f389;欢迎大家点赞&#x1f44d;评论&#x1f4dd;收藏⭐文章 目录 一、变量 1.1基本介绍…...

c#:使用Modbus RTU协议

Modbus是一种广泛应用于工业自动化领域的通信协议&#xff0c;支持多种传输方式&#xff0c;如RTU、TCP等。其中&#xff0c;Modbus RTU是一种基于串行通信的协议&#xff0c;具有高效、可靠的特点。本文将详细介绍Modbus RTU协议的基本原理&#xff0c;并重点解析功能码0x03&a…...

linux系统CentOS 7版本搭建NFS共享存储

一、什么是NFS共享存储方式 NFS共享存储方式 是一种分布式文件系统协议&#xff0c;允许客户端通过网络访问远程服务器上的文件&#xff0c;就像访问本地文件一样。 二、 NFS的基本概念 &#xff08;1&#xff09;服务器端&#xff1a;提供共享存储的机器&#xff0c;负责导…...

Matlab 基于SVPWM的VF三电平逆变器异步电机速度控制

1、内容简介 略 Matlab 167-基于SVPWM的VF三电平逆变器异步电机速度控制 可以交流、咨询、答疑 2、内容说明 略 3、仿真分析 略 4、参考论文 略...

Android Dagger2 框架依赖图构建模块深度剖析(三)

一、引言 在 Android 开发中&#xff0c;依赖注入&#xff08;Dependency Injection&#xff0c;简称 DI&#xff09;是一种重要的设计模式&#xff0c;它能够降低代码的耦合度&#xff0c;提高代码的可测试性和可维护性。Dagger 2 作为一款高效的依赖注入框架&#xff0c;在编…...

(一)微服务初见之 Spring Cloud 介绍

微服务架构简介 从单体应用架构发展到SOA架构&#xff0c;再到微服务架构&#xff0c;应用架构经历了多年的不断演进。微服务架构不是凭空产生的&#xff0c;而是技术发展的必然结果&#xff0c;分布式云平台的应用环境使得微服务代替单体应用成为互联网大型系统的架构选择。目…...

python--面试题--基础题

join() 和 split() 函数 join() 函数可以将指定的字符添加到字符串中。 a[my, name, shi, wzngz] print(..join(a)) 输出结果&#xff1a;my.name.shi.wzngz split() 函数可以用指定的字符分割字符串 a"my name shi wzngz " print(a.split()) 输出结果&#xff…...

架构思维:软件建模与架构设计的关键要点

文章目录 1. 软件建模的核心概念2. 七种常用UML图及其应用场景类图时序图组件图部署图用例图状态图活动图 3. 软件设计文档的三阶段结构4. 架构设计的关键实践1. 用例图&#xff1a;核心功能模块2. 部署图&#xff1a;架构演进阶段3. 技术挑战与解决方案4. 关键架构图示例5. 架…...

【RNN神经网络】序列模型与RNN神经网络

前言 清库存。正式切入大模型后&#xff0c;打算把基础知识都梳理一遍&#xff0c;然后写了两篇就发现写不动了&#xff0c;后面就捡重要的记录。RNN知识仅此一篇记录&#xff0c;扫盲记录。 【自然语言处理】 &#xff08;Natural Language Processing&#xff0c;NLP&#xf…...

Python文件管理

目录 一、文本文件读写 1、相关函数 2、读写文件 3、使用readline读取一行 4、读写文件的异常处理 5、添加内容 二、文本文件的编码 1、常见的编码 2、Python程序的编码 3、指定编码 三、文件的路径 1、相对路径 2、绝对路径 3、路径的改变 四、文件夹操作 五、…...