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

MySQL 03 章——基本的SELECT语句

一、SQL概述

(1)SQL背景知识

  1. SQL(Structured Query Language,结构化查询语言)是使用关系模型的数据库应用语言,与数据直接打交道
  2. 不同的数据库管理系统生产厂商都支持SQL语句,但都有特有内容

(2)SQL语言排行榜

  1. 自从SQL加入了TIOBE编程语言排行榜,就一直保持在Top10

(3)SQL分类

SQL语言在功能上主要分为三大类:

  1. DDL(Data Definition Language,数据定义语言):这些语句定义了不同的数据库、表、视图、索引等数据库对象,还可以用来创建、删除、修改数据库和数据表的结构(CREATE\ALTER\DROP\RENAME\TRUNCATE)

  2. DML(Data Manipulation Language,数据操作语言):用于添加(INSERT)、删除(DELETE)、更新(UPDATE)和查询(SELECT)数据库记录,并检查数据的完整性

  3. DCL(Data Control Language,数据控制语言):用于定义数据库、表、字段、用户的访问权限和安全级别(COMMIT\ROLLBACK\SAVEPOINT\GRANT\REVOKE)

二、SQL语言的规则与规范

(1)基本规则

  1. SQL可以写在一行或者多行,为了提高可读性,各子句分行写,必要时使用缩进
  2. 每条命令以;或\g或\G结尾
  3. 关键字不能被缩写也不能分行
  4. 关于标点符号:
    1. 必须保证所有的()、单引号、双引号是成对结束的
    2. 必须使用英文状态下的半角输入方式
    3. 字符串型日期时间类型的数据可以使用单引号表示
    4. 列的别名,尽量使用双引号,而且不建议省略as

(2)SQL大小写规范

  1. MySQL在Windows环境下是大小写不敏感的
  2. MySQL在Linux环境下是大小写敏感的
    1. 数据库名、表名、表的别名、变量名是严格区分大小写的
    2. 关键字、函数名、列名(字段名)、列的别名(字段的别名)是忽略大小写的
  3. 推荐采用统一的书写规范:
    1. 数据库名、表名、表别名、字段名、字段别名都小写
    2. SQL关键字、函数名、绑定变量都大写

(3)注释

  1. 单行注释:#注释文字(MySQL特有的方式)
  2. 单行注释:-- 注释文字(--后面必须包含一个空格)
  3. 多行注释:/*注释文字*/

(4)命名规则(暂时了解)

  1. 数据库名、表名不得超过30个字符,变量名限制为29个字符
  2. 必须只能包含A-Z、a-z、0-9、_共63个字符
  3. 数据库名、表名、字段名等对象名中间不要包含空格
  4. 同一个MySQL软件中,数据库不能同名;同一个库中,表不能重名;同一个表中,字段不能重名
  5. 必须保证你的字段没有和保留字、数据库系统或常用方法冲突。如果坚持使用,请在SQL语句中使用`(着重号)引起来
  6. 保持字段名和类型的一致性

(5)数据导入指令

  1. 方式一:source 文件的全路径名(在命令行界面下)
  2. 方式二:基于具体的图形化界面

三、基本的SELECT语句

(1)SELECT

  1. 最基本的SELECT语句
  2. DUAL是一个伪表

(2)SELECT...FROM

  1. SELECT 字段1,字段2,... FROM 表名;
  2. *代表表中所有字段

(3)列的别名

  1. 重命名一个列(只在显示的结果中起作用,并不改变列本身的名字)
  2. 便于计算
  3. 紧跟列名,也可以在列名和列的别名之间加入关键字AS,别名使用双引号,以便在别名中包含空格或特殊字符,并区分大小写
  4. AS可以省略
  5. 建议别名简短,见名知意
  6. 举例

(4)去除重复行

  1. 默认情况下,查询会返回全部行,包括重复行
  2. 用distinct去重后的结果(即先把这一列查询出来,然后去除重复的)
  3. 错误的:
  4. 注意(此时二者都相同,才算重复):

(5)空值参与运算

  1. 所有运算符或列值遇到null值,运算结果都为null
  2. null不等同于0,' ','null'
  3. 空值参与运算

(6)着重号

  1. 表名已经与关键字冲突,如果我们还想查询该表格里的数据,就给表名加上一对`(即着重号)

(7)查询常数

  1. 如果查询的不是字段名,那么它就会被当成字段名,查询结果是计算后的
  2. 如果查询内容中有字段名,那么这个整体也会被当成字段名,查询结果是计算后的
  3. 也就是说,我们查询什么,什么就被当作字段名,结果是计算后的

四、显示表结构

  1. 用DESCRIBE关键字
  2. 或者使用DESCRIBE的缩写DESC 

五、过滤数据

  1. 用WHERE关键字接过滤条件:
  2. 字符串要加单引号,别名是加双引号
  3. 在Windows下不区分大小写(但是MySQL不严谨,字符串里也不区分大小写,所以King和king效果一样)

六、课后练习

  1. 查询员工12个月的工资总和,并起名为ANNUAL_SALARY
  2.  查询employees表中去除重复的job_id后的数据
  3. 查询工资大于12000的员工姓名和工资
  4. 查询员工号为176的员工的姓名和部门号
  5. 显示表departments的结构,并查询其中的全部数据

相关文章:

MySQL 03 章——基本的SELECT语句

一、SQL概述 (1)SQL背景知识 SQL(Structured Query Language,结构化查询语言)是使用关系模型的数据库应用语言,与数据直接打交道不同的数据库管理系统生产厂商都支持SQL语句,但都有特有内容 …...

【项目】智能BI洞察引擎 测试报告

目录 一、项目背景BI介绍问题分析项目背景 二、项目功能三、功能测试1、登录测试测试用例测试结果 2、注册测试测试用例测试结果出现的bug 3、上传文件测试测试用例测试结果 4、AI生成图表测试测试用例测试结果 5、分析数据页面测试(异步)测试用例测试结…...

javaEE-文件操作和IO-文件

目录 一.什么是文件 1.文件就是硬盘(磁盘)上的文件。 2.计算机中存储数据的设备: 3.硬盘的物理特征 4.树型结构组织和⽬录 5.文件路径 文件路径有两种表示方式: 6.文件的分类 二、java中文件系统的操作 1.File类中的属性: 2.构造方…...

2025跨年倒计时

<!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>2025年跨年倒计时</title><style>/* 页…...

下载mysql免安装版和配置

1、下载地址 点击去官网下载https://downloads.mysql.com/archives/community/ 2、解压安装mysql 解压的文件夹是没有my.ini文件和data目录&#xff0c;需要我们自己去创建 根目录下创建my.ini&#xff0c;根目录创建data [mysql] default-character-setutf8[mysqld] #端口 po…...

代码模板-C语言常用的errno的名字、值以及对应关系?转换字符串函数?(errno.h, strerror; errno -l; man errno)

背景 errno.h是C 编程语言标准库中的头文件。它定义了使用符号errno &#xff08;“错误号”的缩写&#xff09;报告和检索错误情况的宏。经常需要用来在内核态用户态返回错误寻找&#xff0c;本文以供快速检索。 常用函数与用法 strerror 根据errno获取文件 比如&#xff…...

全新免押租赁系统助力商品流通高效安全

内容概要 全新免押租赁系统的推出&#xff0c;可以说是一场商品流通领域的小革命。想象一下&#xff0c;不再为押金烦恼&#xff0c;用户只需通过一个简单的信用评估&#xff0c;就能快速租到所需商品&#xff0c;这种体验简直令人惊喜&#xff01;这个系统利用代扣支付技术&a…...

5.微服务灰度发布落地实践(rocketmq增强)

文章目录 前言发送端灰度增强订阅端灰度增强 前言 上一篇分析了&#xff0c;在灰度发布实现中为什么要对消息队列灰度发布进行增强。本篇主要介绍如何实现rocketmq 灰度发布的增强. 发送端灰度增强 订阅端灰度增强...

MySql核心面试面试问题解析

MySql核心面试面试问题解析 有时候往往简单的才是最容易失分的&#xff01;&#xff01;&#xff01; MySQL支持哪些存储引擎&#xff1f;有何区别&#xff1f; 答案&#xff1a;常见的存储引擎有InnoDB、MyISAM、Memory等。InnoDB支持事务&#xff0c;MyISAM不支持事务&#x…...

logback之自定义pattern使用的转换器

目录 &#xff08;1&#xff09;场景介绍 &#xff08;2&#xff09;定义转换器BizCallerConverter &#xff08;3&#xff09;logback配置conversionRule &#xff08;4&#xff09;测试效果 前文《logback之pattern详解以及源码分析》已经介绍了pattern&#xff0c;以及…...

【MySQL】发展起源与核心架构组件详细介绍

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《MySQL技术精粹》&#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、引言 1、MySQL起源背景 2、MySQL发展里程 3、MySQL应用场景 二、MySQL的核心特…...

uni-app 多平台分享实现指南

uni-app 多平台分享实现指南 在移动应用开发中&#xff0c;分享功能是一个非常常见的需求&#xff0c;尤其是在社交媒体、营销活动等场景中。使用 uni-app 进行多平台开发时&#xff0c;可以通过一套代码实现跨平台的分享功能&#xff0c;涵盖微信小程序、H5、App 等多个平台。…...

Spring中的IOC是什么,优缺点有哪些?

目录 IOC的核心概念 IOC的优点 IOC的缺点 使用场景说明 总结 IOC&#xff08;控制反转&#xff09;是一种设计思想&#xff0c;用于实现低耦合、高内聚的软件架构。它通过将对象的创建和依赖管理交给外部容器来实现&#xff0c;从而减少对象之间的直接依赖关系。 IOC的核…...

Qt实现使用TCP与RS485串口设备通信————附带详细实践方法

文章目录 0 背景1 协议介绍1.1 modbusRTU协议1.1.1 简介1.1.2 RS485和modbusRTU的关系1.1.3 modbusRTU 协议格式1.1.3.1 0x10写多个保持寄存器1.1.3.2 0x02读多个离散输入寄存器1.1.3.3 0x03读多个保持寄存器1.1.3.4 0x04读多个输入寄存器 1.2 ModbusTCP协议1.2.1 ModbusTCP协议…...

js将object整个实体对象作为参数传递

①将object实体转化成json字符串传递&#xff1a; JSON.stringify(obj) ②将json字符串转化成JSON对象值&#xff1a;JSON.parse(json) 实际应用&#xff1a; <div id"div_notice" stylefont-size:14px; width:100%; height:200px; overflow-y:auto;></di…...

超越局部损失函数的预测-优化方法

1 文章信息 文章名为Leaving the Nest : Going Beyond Local Loss Functions for Predict-Then-Optimize。发表在第38届AAAI Conference on Artificial Intelligence. 作者来自哈佛大学。 2 摘要 预测-优化是一种利用机器学习在不确定性下进行决策的方法框架。其核心研究问…...

PDF预览插件

PDF预览插件 可用于当前页面弹窗形式查看,可增加一些自定义功能 pdf预览插件 代码块: pdfobject.js <div class="pdfwrap"><div class="item"><h3>笑场</h3><div class="tags"><p>李诞</p><i&…...

node.js之---CommonJS 模块

CommonJS概念 在 Node.js 中&#xff0c;CommonJS 是一种模块化规范&#xff0c;它定义了如何在 JavaScript 中创建和使用模块。CommonJS 是 Node.js 使用的默认模块系统。它让开发者能够分离代码&#xff0c;便于重用和维护。 CommonJS 模块的基本特性 模块导出 在 CommonJ…...

关于AI面试系统2025年趋势评估!

在快速发展的科技浪潮中&#xff0c;AI技术正以前所未有的速度渗透到各行各业。企业招聘领域&#xff0c;作为人才选拔的关键环节&#xff0c;也不例外地迎来了AI面试系统的广泛应用和持续创新。2025年&#xff0c;AI面试系统不仅成为企业招聘的主流工具&#xff0c;更在智能化…...

SQL—替换字符串—replace函数用法详解

SQL—替换字符串—replace函数用法详解 REPLACE() 函数——查找一个字符串中的指定子串&#xff0c;并将其替换为另一个子串。 REPLACE(str, old_substring, new_substring)str&#xff1a;要进行替换操作的原始字符串。old_substring&#xff1a;要被替换的子串。new_substri…...

Python锚点链接解析利器pyanchor:高效处理HTML/Markdown文档内部链接

1. 项目概述&#xff1a;一个Python实现的锚点链接解析利器最近在整理一个大型文档项目时&#xff0c;遇到了一个挺头疼的问题&#xff1a;我需要从成千上万个Markdown文件中&#xff0c;批量提取所有指向文档内部特定章节的锚点链接&#xff0c;并验证这些链接是否有效。手动操…...

基于本体论的技能知识图谱:从理论到工程实践

1. 项目概述&#xff1a;当技能遇上本体论最近在整理个人知识库和团队技能矩阵时&#xff0c;我遇到了一个老生常谈的难题&#xff1a;如何用一种结构化的、机器可读的方式&#xff0c;清晰地定义和关联“技能”这个概念&#xff1f;我们通常用Excel表格、标签云或者简单的列表…...

龙虾之父月耗 6030 亿 API token 花 130 万美元+,Token 成 AI 新生产资料?

【导语&#xff1a;龙虾之父 Peter Steinberger 一个月 API token 花费超 130 万美元&#xff0c;引发网友热议。他正探索 Token 不再重要时如何构建软件&#xff0c;Token 也逐渐成为新的生产资料。】高额 Token 花费引争议龙虾之父 Peter Steinberger 一个月 API token 花费高…...

Flask核心进阶:路由、模板与静态文件实战

在掌握Flask入门知识后&#xff0c;想要开发出更具实用性和美观度的Web应用&#xff0c;就需要深入学习其核心进阶功能&#xff0c;其中路由、模板与静态文件是最基础也是最常用的三个模块&#xff0c;三者协同工作&#xff0c;构成了Flask Web应用的前端展示与请求分发体系。路…...

开发者专属提示词库:提升AI协作效率的实战指南

1. 项目概述&#xff1a;一个为开发者量身定制的提示词宝库如果你是一名开发者&#xff0c;无论是前端、后端、运维还是算法工程师&#xff0c;我相信你都或多或少地接触过像 ChatGPT 这类大型语言模型。它们能写代码、解 Bug、解释概念&#xff0c;甚至帮你设计架构。但很多时…...

一键获取Steam游戏清单:Onekey工具让游戏管理变得如此简单

一键获取Steam游戏清单&#xff1a;Onekey工具让游戏管理变得如此简单 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey 你是否曾为管理Steam游戏文件而烦恼&#xff1f;想备份心爱的游戏却不知从…...

HS2-HF_Patch终极指南:一键为Honey Select 2安装完整增强补丁

HS2-HF_Patch终极指南&#xff1a;一键为Honey Select 2安装完整增强补丁 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF_Patch是专为《Honey Select 2》…...

VHD2VL:破解硬件描述语言转换难题的开源解决方案

VHD2VL&#xff1a;破解硬件描述语言转换难题的开源解决方案 【免费下载链接】vhd2vl 项目地址: https://gitcode.com/gh_mirrors/vh/vhd2vl 在FPGA和ASIC设计领域&#xff0c;技术团队常常面临VHDL与Verilog两种硬件描述语言之间的转换挑战。当项目需要跨语言协作、工…...

深度解析:Performance-Fish如何通过四级缓存架构实现《环世界》400%性能优化

深度解析&#xff1a;Performance-Fish如何通过四级缓存架构实现《环世界》400%性能优化 【免费下载链接】Performance-Fish Performance Mod for RimWorld 项目地址: https://gitcode.com/gh_mirrors/pe/Performance-Fish Performance-Fish是《环世界》&#xff08;Rim…...

实战指南:用UABEA高效解析Unity资源结构的5个关键要点

实战指南&#xff1a;用UABEA高效解析Unity资源结构的5个关键要点 【免费下载链接】UABEA c# uabe for newer versions of unity 项目地址: https://gitcode.com/gh_mirrors/ua/UABEA 在Unity开发的世界里&#xff0c;资源管理往往是项目优化中最棘手的一环。你是否曾经…...