【SQL学习进阶】从入门到高级应用(二)
文章目录
- 简单查询
- 查一个字段
- 查多个字段
- 查所有字段
- 查询时字段可参与数学运算
- 查询时字段可起别名
- as关键字
- 省略as关键字
- 别名中有空格
- 别名中有中文
🌈你好呀!我是 山顶风景独好
💝欢迎来到我的博客,很高兴能够在这里和您见面!
💝希望您在这里可以感受到一份轻松愉快的氛围!
💝不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
🚀 欢迎一起踏上探险之旅,挖掘无限可能,共同成长!
欢迎大家订阅本专栏!本专栏旨在为SQL初学者提供一条逐步迈向高级应用的学习之路,带您从零开始,一步一步练习,逐步掌握SQL的精髓,实现技能的提升与飞跃!
上一篇:【SQL学习进阶】从入门到高级应用(一)
简单查询
查询是SQL语言的核心,用于表达SQL查询的select查询命令是功能最强也是最为复杂的SQL语句,它的作用就是从数据库中检索数据,并将查询结果返回给用户。 select语句由:select子句(查询内容)、from子句(查询对象)、where子句(查询条件)、order by子句(排序方式)、group by子句(分组方式)等组成。查询语句属于SQL语句中的DQL语句,是所有SQL语句中最为复杂也是最重要的语句,所以必须掌握。接下来我们先从简单查询语句开始学习。
查一个字段
查询一个字段说的是:一个表有多列,查询其中的一列。
语法格式:select 字段名 from 表名;
- select和from是关键字,不能随便写
- 一条SQL语句必须以“;”结尾
- 对于SQL语句来说,大小写都可以
- 字段名和表名属于标识符,按照表的实际情况填写,不知道字段名的,可以使用desc命令查看表结构
案例1:查询公司中所有员工编号
select empno from emp;

案例2:查询公司中所有员工姓名
SELECT ENAME FROM EMP;

在mysql命令行客户端中,sql语句没有分号是不会执行的:

末尾加上“;”就执行了:

以上sql虽然以分号结尾之后执行了,但是报错了,错误信息显示:语法错误。
假设一个SQL语句在书写过程中出错了,怎么终止这条SQL呢?\c

- 任务1:查询所有部门名称。
- 任务2:查询所有薪资等级。
查多个字段
查询多个字段时,在字段名和字段名之间添加“,”即可。
语法格式:select 字段名1,字段名2,字段名3 from 表名;
案例1:查询员工编号以及员工姓名。
select empno, ename from emp;

字段的前后顺序无所谓(只是显示结果列的时候顺序变了):
select ename, empno from emp;

- 任务1:查询部门编号、部门名称以及位置。
- 任务2:查询员工的名字以及工作岗位。
查所有字段
查询所有字段的可以将每个字段都列出来查询,也可以采用“*”来代表所有字段
案例1:查询员工的所有信息
select * from emp;

案例2:查询所有部门信息
select * from dept;

采用“*”进行查询存在的缺点:
- select * from dept; 在执行的时候会被解析为 select DEPTNO, DNAME, LOC from dept; 再执行,所以这种效率方面弱一些。
- 采用“”的可读性较差,通过“”很难看出都有哪些具体的字段。
什么时候使用“*”?
-
这个SQL语句不在项目编码中使用,如果平时自己想快速查看表中所有数据的话,这种写法还是很给力的。
-
任务1:查询所有的薪资等级以及每个薪资等级的最低工资和最高工资。
查询时字段可参与数学运算
在进行查询操作的时候,字段是可以参与数学运算的,例如加减乘除等。
案例1:查询每个员工的月薪
select ename, sal from emp;

案例2:查询每个员工的年薪(月薪 * 12)
select ename, sal * 12 from emp;

- 任务1:查询每个员工月薪加1000之后的月薪
- 任务2:查询每个员工月薪加1000之后的年薪
查询时字段可起别名
我们借用一下之前的SQL语句
select ename, sal * 12 from emp;

以上的查询结果列名“sal * 12”可读性较差,是否可以给查询结果的列名进行重命名呢?
as关键字
- 使用as关键字
select ename, sal * 12 as yearsal from emp;

通过as关键字起别名后,查询结果列显示yearsal,可读性增强。
省略as关键字
- 其实as关键字可以省略,只要使用空格即可
select ename, sal * 12 yearsal from emp;

- 通过以上测试,得知as可以省略,可以使用空格代替as,但如果别名中有空格呢?
别名中有空格
select ename, sal * 12 year sal from emp;

可以看出,执行报错了,说语法有问题,这是为什么?分析一下:SQL语句编译器在检查该语句的时候,在year后面遇到了空格,会继续找from关键字,但year后面不是from关键字,所以编译器报错了。怎么解决这个问题?记住:如果别名中有空格的话,可以将这个别名使用双引号或者单引号将其括起来。
select ename, sal * 12 "year sal" from emp;
select ename, sal * 12 'year sal' from emp;

在mysql中,字符串既可以使用双引号也可以使用单引号,但还是建议使用单引号,因为单引号属于标准SQL。
别名中有中文
- 如果别名采用中文呢?
select ename, sal * 12 年薪 from emp;

别名是中文是可以的,但是对于低版本的mysql来说会报错,需要添加双引号或单引号。我们当前使用的mysql版本是:8.0.24
- 任务:查询所有员工的信息,要求每个字段名采用中文显示。
相关文章:
【SQL学习进阶】从入门到高级应用(二)
文章目录 简单查询查一个字段查多个字段查所有字段查询时字段可参与数学运算查询时字段可起别名as关键字省略as关键字别名中有空格别名中有中文 🌈你好呀!我是 山顶风景独好 💝欢迎来到我的博客,很高兴能够在这里和您见面…...
FL Studio v21.2.3.4004中文破解版百度网盘下载
FL Studio v21.2.3.4004中文破解版是一款完整的软件音乐制作环境或数字音频工作站 (DAW)。代表了超过 18 年的创新发展,它在一个软件包中提供了您创作、编曲、录制、编辑、混音和掌握专业品质音乐所需的一切。FL Studio v21.2.3.4004中文破解版现在是世界上最受欢迎…...
从0开始写一个环境保护网站的第3天(JAVAWEB)
1.目标 实现首页的环境保护原因的查询,和底部友情连接部分 2.实现 2.1建立数据库表格(这里数据全是百度查询) 环境保护原因表: 友情连接表:(数据来源https://zhuanlan.zhihu.com/p/696243646࿰…...
Java中volatile关键字
保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的,volatile关键字会强制将修改的值立即写入主存。 1.volatile的可见性 一个典型的例子:永不停止的循环。 public class Forever…...
医院挂号就诊系统的设计与实现
前端使用Vue.js 后端使用SpiringBoot MyBatis 数据使用MySQL 需要项目和论文加企鹅:2583550535 医院挂号就诊系统的设计与实现_哔哩哔哩_bilibili 随着社会的发展,医疗资源分布不均,患者就诊难、排队时间长等问题日益突出,传统的…...
SpringBoot整合RabbitMQ的快速使用教程
目录 一、引入依赖 二、配置rabbitmq的连接信息等 1、生产者配置 2、消费者配置 三、设置消息转换器 四、生产者代码示例 1、配置交换机和队列信息 2、生产消息代码 五、消费者代码示例 1、消费层代码 2、业务层代码 在分布式系统中,消息队列是一种重要…...
pytorch比较操作
文章目录 常用的比较操作1.torch.allclose()2.torch.argsort()3.torch.eq()4.torch.equal()5.torch.greater_equal()6.torch.gt()7.torch.isclose()8.torch.isfinite()9.torch.isif()10.torch.isposinf()11.torch.isneginf()12.torch.isnan()13.torch.kthvalue()14.torch.less_…...
2024年4月—马克思主义基本原理概论真题及答案解析(上海自考)
目录 1.选择题 2.简答题 3.论述题 1.选择题 2.简答题...
「Element-UI表头添加带Icon的提示信息」
一、封装全局组件 🍓 注意:可以直接复制该文件 <!-- // 写一个PromptMessage的组件,并全局注册 --> <template><div class"tooltip"><el-tooltip effect"dark" placement"right">&l…...
单细胞 10X 和seurat对象学习
单细胞seurat数据的基础知识 rm(list ls()) library(Seurat) #注意这个报错 #Warning: Feature names cannot have underscores (_), replacing with dashes (-) folderslist.files(./,pattern[123]$) folders scList lapply(folders,function(folder){ CreateSeuratObject(…...
Flutter 中的 Flex 小部件:全面指南
Flutter 中的 Flex 小部件:全面指南 Flutter 的布局系统非常灵活,允许开发者以声明式的方式构建复杂的用户界面。Flex 是 Flutter 中用于创建灵活布局的核心小部件之一,它提供了水平和垂直的线性布局能力。本文将详细介绍 Flex 小部件的使用…...
统计每个活动的用户访问量,且每个用户仅统计一次
场景:统计每个活动的用户访问量,且每个用户仅统计一次。 首先活动表是已经存在了的,一般情况下,我们都会在创建一个用户访问表,其中唯一主键是用户ID活动ID作为唯一主键 create table user_visist_activity_record(i…...
基于SpringBoot的本科生考研率统计系统
基于SpringBoot的本科生考研率统计系统 一、开发技术二、功能模块三、代码结构四、数据库设计五、运行截图六、源码获取 一、开发技术 技术:SpringBoot、MyBatis-Plus、Redis、MySQL、Thymeleaf、Html、Vue、Element-ui。 框架:基于开源框架easy-admin开…...
JMeter正则表达式提取器和JSON提取器基础用法,小白必会!
最近在利用JMeter做接口自动化测试,正则表达式提取器和JSON提取器用的还挺多,想着分享下,希望对大家的接口自动化测试项目有所启发。 在 JMeter 中,正则表达式和 JSON 提取器都是用于从响应数据中提取所需内容,但它们…...
5-26作业
网络聊天室 服务器: 1 #include <myhead.h>2 int main(int argc, const char *argv[])3 {4 if(argc!3)5 {6 printf("请输入IP和端口号\n");7 return -1;8 }9 int sfd socket(AF_INET, SOCK_DGRAM, 0);10 if(…...
2024.05.28学习记录
1. 小林coding 计网复习 2.代码随想录刷题. 图论.和复习数组.链表 3.rosebush完成select组件...
撤销最近一次的提交,使用git revert 和 git reset的区别
文章目录 工作区 暂存区 本地仓库 远程仓库需求:已推送到远程仓库,想要撤销操作git revert (添加新的提交来“反做”之前的更改,云端会残留上次的提交记录)git reset(相当于覆盖上次的提交)1.--…...
MySQL详细安装、配置过程,多图,详解
本文适合centos7环境下安装mysql,在安装和卸载过程中,都在root用户下完成。文章目录 清理环境获取mysql官方yum源安装mysql yum源安装mysql服务安装报错解决办法验证是否安装完成启动mysql服务登录服务方法一:方法二:方法三&#…...
音视频学习规划
文章目录 概述闲聊点 小结 概述 最近在学习音视频,觉得还是要先写个提纲,给自己制定下学习路线及目标。先写下我的个人流程及思路。 ffmpeg的命令ffmpeg api播放器流媒体RTMP,HLS 闲聊点 先说下学习命令行吧,学习命令行是为了…...
代码随想录算法训练营第21天|● 530.二叉搜索树的最小绝对差 ● 501.二叉搜索树中的众数 ● 236. 二叉树的最近公共祖先
二叉搜索树的最小绝对差 题目连接 https://leetcode.cn/problems/minimum-absolute-difference-in-bst/ 思路: 利用二叉搜索树的中序遍历的特性,将二叉树转成有序数组,进而求任意两个数的最小绝对差。 代码 /*** Definition for a bina…...
为什么顶级策展人不用Google搜文化新闻?Perplexity文化垂直搜索的5层语义增强架构(含可复用prompt工程模板)
更多请点击: https://kaifayun.com 第一章:为什么顶级策展人不用Google搜文化新闻? 顶级策展人并非排斥搜索引擎,而是早已构建起一套高度结构化、语义化、可验证的信息摄取系统——它绕过关键词匹配的偶然性,直击文化…...
RK3588/RK3568嵌入式开发:从通用镜像到定制分区镜像的完整实践指南
1. 项目概述:从“通用”到“专属”的镜像进化最近在折腾RK3588和RK3568平台时,我发现了一个挺有意思的升级点:开发板和核心板的镜像支持定制分区了。这听起来可能有点技术化,但说白了,就是以前我们拿到的系统镜像&…...
深入PHY芯片:从88E1512的Loopback模式理解千兆以太网PCS/PMA/PMD分层
深入解析88E1512 PHY芯片:用环回模式透视千兆以太网物理层架构 在硬件网络调试的深水区,当常规的软件工具无法定位链路故障时,工程师需要一把能够解剖物理层数据流的"手术刀"。Marvell 88E1512这款高度集成的千兆以太网PHY芯片&…...
如何用AI语音修复工具VoiceFixer:快速拯救受损音频的完整指南
如何用AI语音修复工具VoiceFixer:快速拯救受损音频的完整指南 【免费下载链接】voicefixer General Speech Restoration 项目地址: https://gitcode.com/gh_mirrors/vo/voicefixer 还在为嘈杂的录音、失真的语音或老旧音频而烦恼吗?VoiceFixer是一…...
告别Centerness和IoU-Net:聊聊GFLv2如何用‘边框分布统计’更准地评估定位质量
目标检测定位质量评估的范式革新:从启发式设计到统计驱动 在目标检测领域,定位质量评估(Localization Quality Estimation, LQE)一直是个微妙却关键的问题。想象一下这样的场景:当两个检测框都包含了目标物体…...
OpenArm开源机械臂终极指南:从零开始构建你的7自由度人形手臂
OpenArm开源机械臂终极指南:从零开始构建你的7自由度人形手臂 【免费下载链接】openarm A fully open-source humanoid arm for physical AI research and deployment in contact-rich environments. 项目地址: https://gitcode.com/GitHub_Trending/op/openarm …...
终极Steam挂刀指南:如何利用开源行情站实现智能交易收益
终极Steam挂刀指南:如何利用开源行情站实现智能交易收益 【免费下载链接】SteamTradingSiteTracker Steam 挂刀行情站 —— 24小时更新的 BUFF & IGXE & C5 & UUYP & ECO 挂刀比例数据 | Track cheap Steam Community Market items on buff.163.com…...
通过curl命令快速测试Taotoken接口连通性与返回格式
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过curl命令快速测试Taotoken接口连通性与返回格式 在集成大模型服务时,直接使用curl命令进行接口测试是一种高效、轻…...
告别Modelsim命令行!用Notepad++插件NppExec一键检查Verilog语法(附详细配置命令)
硬件工程师的效率革命:Notepad与Verilog语法检查的终极整合方案 在数字电路设计领域,Verilog作为主流硬件描述语言,其语法检查是每位工程师日常工作中不可或缺的环节。传统工作流程中,工程师们不得不在文本编辑器与EDA工具之间频繁…...
上机器人真能省人吗,先看这几个车间实情
就以我自己的视角,给同样想推动自动化改造的工厂管理者们,聊聊这里面的门道和实在账。很多人问我,你们做自动化集成的是不是就爱忽悠老板砸钱上机器人?听着光鲜,最后落灰的“铁疙瘩”我见得多了。我是自动化老厂的二代…...
