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

SQL世界之基础命令语句

目录

一、SQL SELECT 语句

1.SQL SELECT 语法

2.SQL SELECT 实例

3.SQL SELECT * 实例

二、SQL SELECT DISTINCT 语句

1.语法

2.使用 DISTINCT 关键词

三、SQL SELECT WHERE 语句

1.WHERE 子句

2.语法

3.使用 WHERE 子句

4.引号的使用

四、SQL SELECT AND&OR 语句

1.AND 和 OR 运算符

2.AND 运算符实例

3.OR 运算符实例

4.结合 AND 和 OR 运算符

五、SQL SELECT ORDER BY 语句

1.ORDER BY 语句

1)以字母顺序显示公司名称

2)以字母顺序显示公司名称(Company),并以数字顺序显示顺序号(OrderNumber)

3)以逆字母顺序显示公司名称

4)以逆字母顺序显示公司名称,并以数字顺序显示顺序号

六、SQL INSERT INTO 语句

1.语法

2.插入新的行

3.在指定的列中插入数据

七、SQL Update 语句

1.语法

2.更新某一行中的一个列

3.更新某一行中的若干列

八、SQL DELETE 语句

1.语法

2.删除某行

3.删除所有行


一、SQL SELECT 语句

SELECT 语句用于从表中选取数据。

结果被存储在一个结果表中(称为结果集)。

1.SQL SELECT 语法

SELECT 列名称 FROM 表名称

以及:

SELECT * FROM 表名称

再次提醒:SQL 语句对大小写不敏感,SELECT 等效于 select。

2.SQL SELECT 实例

如需获取名为 "LastName" 和 "FirstName" 的列的内容(从名为 "Persons" 的数据库表),请使用类似这样的 SELECT 语句:

SELECT LastName,FirstName FROM Persons

"Persons" 表:

Id

LastName

FirstName

Address

City

001

Aam

Joh

Oxd Street

London

002

Buh

Grge

Fifth Aue

New York

003

Car

Tmas

Can Street

Beijing

结果:

LastName

FirstName

Aam

Joh

Buh

Grge

Car

Tmas

3.SQL SELECT * 实例

从 "Persons" 表中选取所有的列时,用符号 * 取代列的名称,就像这样:

SELECT * FROM Persons

提示:星号(*)是选取所有列的快捷方式。

结果:

Id

LastName

FirstName

Address

City

001

Aam

Joh

Oxd Street

London

002

Buh

Grge

Fifth Aue

New York

003

Car

Tmas

Can Street

Beijing

二、SQL SELECT DISTINCT 语句

在表中,可能会包含重复值,当仅仅列出不同(distinct)的值时:

关键词 DISTINCT 用于返回唯一不同的值。

1.语法

SELECT DISTINCT 列名称 FROM 表名称

2.使用 DISTINCT 关键词

如果要从 "Company" 列中选取所有的值,就应该使用 SELECT 语句:

SELECT Company FROM Orders

"Orders"表:

Company

OrderNumber

IBM

3532

School

2356

Apple

4698

School

6953

结果:

Company

IBM

School

Apple

School

此时,在结果集中,School 被列出了两次。

如需从 Company" 列中仅选取唯一不同的值,只需使用 SELECT DISTINCT 语句:

SELECT DISTINCT Company FROM Orders

结果:

Company

IBM

School

Apple

三、SQL SELECT WHERE 语句

WHERE 子句用于规定选择的标准。

1.WHERE 子句

如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句。

2.语法

SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

下面的运算符可在 WHERE 子句中使用:

操作符

描述

=

等于

<>

不等于

>

大于

<

小于

>=

大于等于

<=

小于等于

BETWEEN

在某个范围内

LIKE

搜索某种模式

注释:在某些版本的 SQL 中,操作符 <> 可以写为 !=。

3.使用 WHERE 子句

如果只希望选取居住在城市 "Beijing" 中的人,需要向 SELECT 语句添加 WHERE 子句:

SELECT * FROM Persons WHERE City='Beijing'

"Persons" 表

LastName

FirstName

Address

City

Year

Aam

Joh

Oxd Street

London

1970

Buh

Grge

Fifth Aue

New York

1975

Car

Tmas

Can Street

Beijing

1980

Gates

Bill

Xuanwumen 10

Beijing

1985

结果:

LastName

FirstName

Address

City

Year

Car

Tmas

Can Street

Beijing

1980

Gates

Bill

Xuanwumen 10

Beijing

1985

4.引号的使用

SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值,请不要使用引号。

文本值:

这是正确的:SELECT * FROM Persons WHERE FirstName='Buh'

这是错误的:SELECT * FROM Persons WHERE FirstName=Buh

数值:

这是正确的:SELECT * FROM Persons WHERE Year>1965

这是错误的:SELECT * FROM Persons WHERE Year>'1965'

四、SQL SELECT AND&OR 语句

AND 和 OR 运算符用于基于一个以上的条件对记录进行过滤。

1.AND 和 OR 运算符

AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来。

如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。

如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。

原始的表:

LastName

FirstName

Address

City

Aam

Joh

Oxd Street

London

Buh

Grge

Fifth Aue

New York

Car

Tmas

Can Street

Beijing

Car

William

Xuanwumen 10

Beijing

2.AND 运算符实例

使用 AND 来显示所有姓为 "Car" 并且名为 "Tmas" 的人:

SELECT * FROM Persons WHERE FirstName='Tmas' AND LastName='Car'

结果:

LastName

FirstName

Address

City

Car

Tmas

Can Street

Beijing

3.OR 运算符实例

使用 OR 来显示所有姓为 "Car" 或者名为 "Tmas" 的人:

SELECT * FROM Persons WHERE Firstname='Tmas' OR Lastname='Car'

结果:

LastName

FirstName

Address

City

Car

Tmas

Can Street

Beijing

Car

William

Xuanwumen 10

Beijing

4.结合 AND 和 OR 运算符

把 AND 和 OR 结合起来(使用圆括号来组成复杂的表达式):

SELECT * FROM Persons WHERE (FirstName='Tmas' OR FirstName='William')AND LastName='Car'

结果:

LastName

FirstName

Address

City

Car

Tmas

Can Street

Beijing

Car

William

Xuanwumen 10

Beijing

五、SQL SELECT ORDER BY 语句

ORDER BY 语句用于对结果集进行排序。

1.ORDER BY 语句

ORDER BY 语句用于根据指定的列对结果集进行排序。

ORDER BY 语句默认按照升序对记录进行排序。如果按照降序对记录进行排序,可以使用 DESC 关键字。

原始的表:

Company

OrderNumber

IBM

3532

School

2356

Apple

4698

School

6953

1)以字母顺序显示公司名称

SELECT Company, OrderNumber FROM Orders ORDER BY Company

结果:

Company

OrderNumber

Apple

4698

IBM

3532

School

6953

School

2356

2)以字母顺序显示公司名称(Company),并以数字顺序显示顺序号(OrderNumber)

SELECT Company, OrderNumber FROM Orders ORDER BY Company, OrderNumber

结果:

Company

OrderNumber

Apple

4698

IBM

3532

School

2356

School

6953

3)以逆字母顺序显示公司名称

SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC

结果:

Company

OrderNumber

School

6953

School

2356

IBM

3532

Apple

4698

4)以逆字母顺序显示公司名称,并以数字顺序显示顺序号

SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC, OrderNumber ASC

结果:

Company

OrderNumber

School

2356

School

6953

IBM

3532

Apple

4698

六、SQL INSERT INTO 语句

INSERT INTO 语句用于向表格中插入新的行。

1.语法

INSERT INTO 表名称 VALUES (值1, 值2,....)

指定所要插入数据的列:

INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)

2.插入新的行

"Persons" 表:

LastName

FirstName

Address

City

Car

Tmas

Can Street

Beijing

INSERT INTO Persons VALUES ('Gates', 'Bill', 'Xuanwumen 10', 'Beijing')

结果:

LastName

FirstName

Address

City

Car

Tmas

Can Street

Beijing

Gates

Bill

Xuanwumen 10

Beijing

3.在指定的列中插入数据

"Persons" 表:

LastName

FirstName

Address

City

Car

Tmas

Can Street

Beijing

Gates

Bill

Xuanwumen 10

Beijing

INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees')

结果:

LastName

FirstName

Address

City

Car

Tmas

Can Street

Beijing

Gates

Bill

Xuanwumen 10

Beijing

Wilson

Champs-Elysees

七、SQL Update 语句

Update 语句用于修改表中的数据。

1.语法

UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

Person:

LastName

FirstName

Address

City

Gates

Bill

Xuanwumen 10

Beijing

Wilson

Champs-Elysees

2.更新某一行中的一个列

给Lastname是 "Wilson" 的人添加 Firstname:

UPDATE Person SET FirstName = 'Fred' WHERE LastName = 'Wilson'

结果:

LastName

FirstName

Address

City

Gates

Bill

Xuanwumen 10

Beijing

Wilson

Fred

Champs-Elysees

3.更新某一行中的若干列

修改地址(address),并添加城市名称(city):

UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing' WHERE LastName = 'Wilson'

结果:

LastName

FirstName

Address

City

Gates

Bill

Xuanwumen 10

Beijing

Wilson

Fred

Zhongshan 23

Nanjing

八、SQL DELETE 语句

DELETE 语句用于删除表中的行。

1.语法

DELETE FROM 表名称 WHERE 列名称 = 值

Person:

LastName

FirstName

Address

City

Gates

Bill

Xuanwumen 10

Beijing

Wilson

Fred

Zhongshan 23

Nanjing

2.删除某行

删除"Fred Wilson"所在行:

DELETE FROM Person WHERE LastName = 'Wilson'

结果:

LastName

FirstName

Address

City

Gates

Bill

Xuanwumen 10

Beijing

3.删除所有行

可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:

DELETE FROM table_name

或者:

DELETE * FROM table_name

相关文章:

SQL世界之基础命令语句

目录 一、SQL SELECT 语句 1.SQL SELECT 语法 2.SQL SELECT 实例 3.SQL SELECT * 实例 二、SQL SELECT DISTINCT 语句 1.语法 2.使用 DISTINCT 关键词 三、SQL SELECT WHERE 语句 1.WHERE 子句 2.语法 3.使用 WHERE 子句 4.引号的使用 四、SQL SELECT AND&OR …...

Facebook未来展望:社交媒体的下一个篇章

社交媒体一直是连接人与人之间的纽带&#xff0c;而Facebook则一直在推动这一领域的发展。随着科技不断演进和社会需求的不断变迁&#xff0c;Facebook正积极筹谋社交媒体的下一个篇章。本文将深入剖析Facebook的未来展望&#xff0c;探讨其在社交媒体领域所迎接的新时代。 1. …...

源码搭建教学:直播带货商城小程序开发

结合小程序开发的直播带货商城&#xff0c;不仅可以提供更便捷的购物体验&#xff0c;还可以实现更高效的销售。因此&#xff0c;学习如何搭建一个直播带货商城小程序将成为您拓展商业领域的利器。 步骤一&#xff1a;准备工作 在开始开发之前&#xff0c;您需要进行一些准备工…...

vue-cli引入本地json数据:封装为js文件,无需请求直接读取

vue-cli引入本地json数据 1、新建js文件&#xff08;路径自定义&#xff09;&#xff0c;写入JSON数据 /* jsonData.js */export let jsonData { // 声明变量&#xff0c;存储数据// JSON源数据 }2、组件内引入js文件&#xff0c;读取数据 /* Example.vue */import { json…...

20240202在Ubuntu20.04.6下使用whisper.cpp的显卡模式

20240202在Ubuntu20.04.6下使用whisper.cpp的显卡模式 2024/2/2 19:43 【结论&#xff1a;在Ubuntu20.04.6下&#xff0c;确认large模式识别7分钟中文视频&#xff0c;需要356447.78 ms&#xff0c;也就是356.5秒&#xff0c;需要大概5分钟&#xff01;效率太差&#xff01;】 …...

前端面试拼图-数据结构与算法

摘要&#xff1a;总结一些前端算法题&#xff0c;持续更新&#xff01; 一、数据结构与算法 时间复杂度-程序执行时需要的计算量&#xff08;CPU&#xff09; 空间复杂度-程序执行时需要的内存空间 前端开发&#xff1a;重时间&#xff0c;轻空间 1.把一个数组旋转k步 arr…...

在C++的union中使用std::string(非POD对象)的陷阱

struct和union的对比 union最开始是C语言中的关键字&#xff0c;在嵌入式中比较常见&#xff0c;由于嵌入式内存比较稀缺&#xff0c;所以常用union用来节约空间&#xff0c;在其他需要节省内存的地方也可以用到这个关键字&#xff0c;写一个简单程序来说明union的用途 struc…...

Spring Cloud Netflix Eureka的参数调优

下面主要分为Client端和Server端两大类进行简述&#xff0c;Eureka的几个核心参数 客户端参数 Client端的核心参数 参数默认值说明eureka.client.availability-zones告知Client有哪些region以及availability-zones&#xff0c;支持配置修改运行时生效eureka.client.filter-o…...

Wireshark不显示Thrift协议

使用Wireshark对thrift协议进行抓包&#xff0c;但是只显示了传输层的tcp协议&#xff1a; "右键" -> "Decode As" 选择thrift的tcp端口 将“当前”修改为Thrift&#xff0c;然后点击“确定” 设置后&#xff0c;可以发现Wireshark里面显示的协议从Tcp变…...

VMware虚拟机安装openEuler系统(一)(2024)

目录 一、下载ISO镜像 二、开始创建虚拟机 通过实践是学习openEuler开源Linux系统的最佳方式。因此我们首先得搭建一个openEuler实战环境&#xff0c;文章是在Windows系统上使用VMware Workstation虚拟化软件&#xff0c;安装和学习openEuler开源Linux操作系统。 使用虚拟机…...

Rust入门

文章目录 一、HelloWorld二、控制台输入 以最简单的两个Rust程序例子入门Rust。首先需要下载安装Rust&#xff0c;之后在VSCode或Clion中运行Rust需要下载Rust插件 一、HelloWorld fn main(){println!("Hello World!"); }二、控制台输入 use std::io::stdin; fn …...

RabiitMQ延迟队列(死信交换机)

Dead Letter Exchange&#xff08;死信交换机&#xff09; 在MQ中&#xff0c;当消息成为死信&#xff08;Dead message 死掉的信息&#xff09;后&#xff0c;消息中间件可以将其从当前队列发送到另一个队列中&#xff0c;这个队列就是死信队列。而 在RabbitMQ中&#xff0c;由…...

浅谈应该遵守的伦敦银交易规则

做伦敦银投资的朋友应遵守伦敦银交易规则&#xff0c;伦敦银交易规则不是指那些伦敦银交易技巧&#xff0c;而是在这个市场中要遵循的一些约定&#xff0c;下面我们就来讨论一下。 风险管理。风险管理即指投资者控制自己一笔乃至整体交易的风险&#xff0c;没有风险管理意识的投…...

安装opencart

一、安装模板 Install SO Emarket Opencart 4 Theme 一&#xff1a;so_emarket_quick2 二&#xff1a;theme package installation 1、installed opencart Default 2、Extensions->Installer->Upload->so_emarket_theme_oc4011_home21_to_home35_v2.0.3->so_theme…...

Qt PCL学习(一):环境搭建

参考 (QT配置pcl)PCL1.12.1QT5.15.2vs2019cmake3.22.4vtk9.1.0visual studio2019Qt5.15.2PCL1.12.1vtk9.1.0cmake3.22.2 本博客用到的所有资源 版本一览&#xff1a;Visual Studio 2019 Qt 5.15.2 PCL 1.12.1 VTK 9.1.0https://pan.baidu.com/s/1xW7xCdR5QzgS1_d1NeIZpQ?pw…...

代码随想录算法训练营第四十二天 | 416. 分割等和子集

题目链接&#xff1a;416. 分割等和子集 文章讲解&#xff1a;代码随想录 416. 分割等和子集讲解 视频讲解&#xff1a;动态规划之背包问题&#xff0c;这个包能装满吗&#xff1f;| LeetCode&#xff1a;416.分割等和子集 思路和解法 题目&#xff1a; 给你一个 只包含正整…...

Spring GateWay

概述简介 能干什么 反向代理 鉴权 流量控制 熔断 日志监控 Spring Cloud Gateway 与Zuul的区别 在SpringCloud Finchley正式版之前&#xff0c;Spring Cloud推荐的网关是 Netflix提供的Zuul: 1、Zuul 1.x&#xff0c;是一个基于阻塞Ⅳ/O的APl Gateway 2、Zuul 1.x基于Servl…...

介绍一个关于 JSON 可视化的网站

最近在看到一个比较好玩的网站&#xff0c;可以将 JSON以可视化的方式展现出现&#xff0c;比如存在一下JSON数据&#xff1a; {"id": "f3bbc3bc-9f34-4bf7-8a0f-7e6f6e6fbb9a","isActive": false,"age": 25,"name": "…...

系统架构设计师-22年-上午答案

系统架构设计师-22年-上午答案 更多软考资料 https://ruankao.blog.csdn.net/ 1 ~ 10 1 云计算服务体系结构如下图所示&#xff0c;图中①、②、③分别与 SaaS PaaS Iaas相对应&#xff0c;图中①、②、③应为(1) #mermaid-svg-xqMbIVMC8pWrne2L {font-family:"trebuch…...

2024 年改变行业的人工智能主要趋势

1、导读 当我们迈入 2024 年时&#xff0c;了解人工智能趋势至关重要。它们不仅仅涉及技术进步&#xff1b;还涉及技术进步。它们意味着我们解决问题、做出决策和展望未来的方式发生了转变。本文旨在探索这些变革趋势&#xff0c;并强调人工智能如何不断突破可能性的界限&…...

MAA明日方舟自动化助手:5分钟快速上手指南

MAA明日方舟自动化助手&#xff1a;5分钟快速上手指南 【免费下载链接】MaaAssistantArknights 一款明日方舟游戏小助手 项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights MAA&#xff08;MaaAssistantArknights&#xff09;是一款专为《明日方…...

SAP资产会计数据迁移:除了AS91,你还需要检查这些关键配置(传输日期、抵销科目详解)

SAP资产会计数据迁移&#xff1a;AS91之外的7个关键配置陷阱与解决方案 当你在凌晨三点盯着屏幕上不平的资产折旧凭证时&#xff0c;AS91的简单操作指南显然已经不够用了。作为经历过数十个SAP上线项目的顾问&#xff0c;我发现90%的资产数据迁移问题都源于那些容易被忽略的后台…...

Node.js 轻量级数据库 NeDB 实战指南:从入门到精通

1. 为什么你需要了解NeDB 如果你正在寻找一个轻量级的Node.js数据库解决方案&#xff0c;NeDB绝对值得你花时间研究。作为一个嵌入式数据库&#xff0c;它不需要单独运行数据库服务&#xff0c;数据可以直接存储在内存或磁盘文件中。我在多个小型项目中使用过NeDB&#xff0c;最…...

VSCode + CMake + MinGW 配置踩坑实录:从‘make’命令报错到一键编译调试全搞定

VSCode CMake MinGW 配置踩坑实录&#xff1a;从‘make’命令报错到一键编译调试全搞定 如果你正在尝试用VSCode搭建C开发环境&#xff0c;大概率已经看过无数篇教程&#xff0c;但依然会在某个环节卡住——可能是CMake找不到编译器&#xff0c;可能是调试器无法启动&#x…...

实战必备:快马AI打造ensp实验室级安装方案,保障网络教学顺利进行

作为一名网络工程专业的教师&#xff0c;我深知ensp&#xff08;Enterprise Network Simulation Platform&#xff09;在实验教学中的重要性。但每次新学期开始&#xff0c;最头疼的就是帮学生们搭建实验环境。不同电脑配置、系统版本、驱动兼容性问题&#xff0c;常常让简单的…...

OpenClaw 的 Skill免费开源的

OpenClaw 的 Skill 生态非常丰富&#xff0c;其中绝大部分都是免费开源的。以下为您推荐几类实用的免费插件&#xff0c;您可以根据需求选择安装。&#x1f6e1;️ 一、安全与权限控制 (强烈建议优先安装)skill-vetter / clawsec功能&#xff1a;安装插件前自动扫描代码&#x…...

为什么92%的候选人栽在FastAPI流式响应题上?——基于137份大厂AI后端面试记录的深度复盘

第一章&#xff1a;FastAPI 2.0流式响应的核心机制与演进脉络FastAPI 2.0 对流式响应&#xff08;Streaming Response&#xff09;进行了底层重构&#xff0c;将原先依赖 Starlette 的 StreamingResponse 封装升级为原生异步生成器驱动模型&#xff0c;并深度整合 ASGI 3.0 规范…...

vLLM-v0.17.1实操手册:vLLM服务升级策略与滚动更新最佳实践

vLLM-v0.17.1实操手册&#xff1a;vLLM服务升级策略与滚动更新最佳实践 1. vLLM框架概述 vLLM是一个专为大型语言模型(LLM)设计的高性能推理和服务库&#xff0c;最新发布的v0.17.1版本带来了多项性能优化和功能增强。这个开源项目最初由加州大学伯克利分校的研究团队开发&am…...

用TurtleBot3实测:Navigation2局部代价地图的滚动窗口为何必须用odom坐标系?

TurtleBot3实测&#xff1a;为什么Navigation2局部代价地图必须绑定odom坐标系&#xff1f; 当你在Gazebo中第一次看到TurtleBot3的导航表现时&#xff0c;可能会对局部代价地图&#xff08;Local Costmap&#xff09;的坐标系选择产生疑问。为什么这个实时更新的避障地图要绑定…...

SPIRAN ART SUMMONER跨平台适配:Windows/macOS/Linux下Streamlit祭坛兼容性

SPIRAN ART SUMMONER跨平台适配&#xff1a;Windows/macOS/Linux下Streamlit祭坛兼容性 1. 引言&#xff1a;当幻光祭坛遇见不同操作系统 想象一下&#xff0c;你刚刚在网络上看到了一个令人惊叹的AI图像生成工具——SPIRAN ART SUMMONER。它那充满《最终幻想10》风格的“幻光…...