【MySQL】SQL菜鸟教程(一)

1.常见命令

1.1 总览

在这里插入图片描述

命令作用
SELECT从数据库中提取数据
UPDATE更新数据库中的数据
DELETE从数据库中删除数据
INSERT INTO向数据库中插入新数据
CREATE DATABASE创建新数据库
ALTER DATABASE修改数据库
CREATE TABLE创建新表
ALTER TABLE变更数据表
DROP TABLE删除表
CREATE INDEX创建索引
DROP INDEX删除索引

1.2 常用语法

  • SELECT:用于从数据库中查询数据
SELECT column_name
FROM table_name
WHERE condition
ORDER BY column_name ASC/DESC

column_name(s): 要查询的列。
table_name: 要查询的表。
condition: 查询条件(可选)。
ORDER BY: 排序方式,ASC 表示升序,DESC 表示降序(可选)。

  • INSERT INTO:用于向数据库表中插入新数据
INSERT INTO table_name (column1, column2,...)
VALUES (value1, value2, ...)

table_name: 要插入数据的表。
column1, column2, …: 要插入数据的列。
value1, value2, …: 对应列的值。

  • UPDATE:用于更新数据库表中现有数据
UPDATE table_name
SET  column1 = value1, column2 = value2,..
WHERE condition

table_name: 要更新数据的表。
column1 = value1, column2 = value2, …: 要更新的列及其新值。
condition: 更新条件。

  • DELETE:用于从数据库表中删除数据
DELETE FROM table_name
WHERE condition

table_name: 要删除数据的表。
condition: 删除条件。

  • CREATE TABLE:用于创建新的数据库表
CREATE TABLE table_name(column1 data_type constraint,column2 data_type constraint,....)

table_name: 要创建的表名。
column1, column2, …: 表的列。
data_type: 列的数据类型(如 INT、VARCHAR 等)。
constraint: 列的约束(如 PRIMARY KEY、NOT NULL 等)。

  • ALTER TABLE:用于修改现有的数据库表的结构
ALTER TABLE table_name
ADD column_name1 data_typeALTER TABLE table_name
DROP COLUMN column_name2

table_name: 要修改的表。
column_name1: 要添加的列。
data_type: 列的数据类型。
column_name2: 要删除的列。

  • DROP TABLE:用于删除数据库表
DROP TABLE table_name

table_name: 要删除的表

  • CREATE INDEX:用于创建索引,以加快查询速度
CREATE INDEX index_name
ON table_name (column_name)

index_name: 索引名
table_name:创建的表
column_name: 表中要索引的列

  • DROP INDEX:用于删除索引
DROP INDEX index_name
ON table_name 

index_name: 要删除的索引名
table_name:索引所在的表

  • WHERE:用于指定筛选条件
SELECT column_name
FROM table_name
WHERE condition

condition:筛选条件

  • ORDER BY:用于对结果集进行排序
SELECT column_name
FROM table_name
ORDER BY column_name ASC/DESC

column_name : 用于排序的列
ASC : 升序(默认,什么都不写的话就是升序)
DESC :降序

  • GROUP BY:用于将结果按一列或者多列进行分组
SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE condition
GROUP BY column_name

aggregate_function: 聚合函数(如 COUNT、SUM、AVG 等)

  • HAVING:用于对分组后的结果进行筛选
SELECT column_name, aggregate_function(column_name)
FROM table_name
GROUP BY column_name
HAVING condition

condition:筛选条件

  • JOIN:用于将两个或多个表的记录结合起来
SELECT column_name 
FROM table_name1
JOIN table_name2
ON table_name1.column_name = table_name2.column_name

JOIN: 可以是 INNER JOIN、LEFT JOIN、RIGHT JOIN 或 FULL JOIN。

  • DISTINCT:用于返回唯一不同的值
SELECT DISTINCT column_name 
FROM table_name

column_name(s): 要查询的列。

2.SELECT

2.1 语法

SELECT  column_name 1, column_name 2
FROM table_name#OR
SELECT * FROM table_name

参数说明:

  • column1, column2, …:要选择的字段名称,可以为多个字段。如果不指定字段名称,则会选择所有字段。
  • table_name:要查询的表名称。
  • *: 通配符,表示选择表中的所有列。

2.2 示例

Websites表:

idnameurlalexacountry
1Googlehttps://www.google.cm/1USA
2淘宝https://www.taobao.com/13CN
3菜鸟教程http://www.runoob.com/4689CN
4微博http://weibo.com/20CN
5Facebookhttps://www.facebook.com/3USA

1.从 “Websites” 表中选取 “name” 和 “country” 列:

SELECT name, country
FROM Websites

在这里插入图片描述

2.从 “Websites” 表中选取所有列:

SELECT * FROM Websites

在这里插入图片描述

3.SELECT DISTINCT

在表中,一个列可能会包含多个重复值,有时您也许希望仅仅列出不同(distinct)的值。

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

3.1 语法

SELECT  DISTINCT column_name 1, column_name 2
FROM table_name

参数说明:

  • column1, column2, …:要选择的字段名称,可以为多个字段。如果不指定字段名称,则会选择所有字段。
  • table_name:要查询的表名称。

3.2 示例

Websites表:

idnameurlalexacountry
1Googlehttps://www.google.cm/1USA
2淘宝https://www.taobao.com/13CN
3菜鸟教程http://www.runoob.com/4689CN
4微博http://weibo.com/20CN
5Facebookhttps://www.facebook.com/3USA

1.从 “Websites” 表的 “country” 列中选取唯一不同的值,也就是去掉 “country” 列重复值:

SELECT DISTINCT  country
FROM Websites

在这里插入图片描述

4.WHERE

WHERE 子句用于提取那些满足指定条件的记录。

4.1 语法

SELECT  column_name 1, column_name 2
FROM table_name
WHERE condition

参数说明:

  • column1, column2, …:要选择的字段名称,可以为多个字段。如果不指定字段名称,则会选择所有字段。
  • table_name:要查询的表名称。
  • condition: 筛选条件

4.2 WHERE 中的运算符

运算符含义
=等于
!= / <>不等于
>大于
<小于
>=大于等于
<=小于等于
AND组合多个逻辑,与
OR逻辑,或
NOT逻辑,非
BETWEEN …AND…在某个范围之内
LIKE搜索某种模式吗,模糊查询
IN指定针对某个列的多个可能值
IS NULL检查是否为空
IS NOT NULL检查是否不为空

4.3 示例

Websites表:

idnameurlalexacountry
1Googlehttps://www.google.cm/1USA
2淘宝https://www.taobao.com/13CN
3菜鸟教程http://www.runoob.com/4689CN
4微博http://weibo.com/20CN
5Facebookhttps://www.facebook.com/3USA

1.从 “Websites” 表中选取国家为 “CN” 的所有网站:

SELECT  url
FROM Websites
WHERE country = 'CN'

在这里插入图片描述

SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。在上个实例中 ‘CN’ 文本字段使用了单引号。如果是数值字段,请不要使用引号。

2.从 “Websites” 表中选取id为 “1” 的网站:

SELECT  url
FROM Websites
WHERE id = 1

在这里插入图片描述
3.匹配列表中的任意值(IN)

SELECT  *
FROM Employees
WHERE Department IN ('HR', 'IT', 'Finance')

4.模糊匹配(LIKE)支持通配符 %(任意多个字符)和 _(单个字符)

SELECT  *  FROM Employees   WHERE Name LIKE ‘J%’     	-- 以J开头的名字
SELECT  *  FROM Employees   WHERE Name LIKE ‘%son’		-- 以son结尾的名字
SELECT  *  FROM Employees   WHERE Name LIKE ‘_o%’		-- 第二个字符是o的名字

5.ORDER BY

ORDER BY 关键字用于对结果集进行排序。默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,您可以使用 DESC 关键字。

5.1 语法

SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC;

参数说明:

  • column1, column2, …:要选择的字段名称,可以为多个字段。如果不指定字段名称,则会选择所有字段。
  • table_name:要查询的表名称。
  • ASC: 按升序排序(默认)
  • DESC: 按降序排序

5.2 示例

Websites表:

idnameurlalexacountry
1Googlehttps://www.google.cm/1USA
2淘宝https://www.taobao.com/13CN
3菜鸟教程http://www.runoob.com/4689CN
4微博http://weibo.com/20CN
5Facebookhttps://www.facebook.com/3USA

1.从 “Websites” 表中选取所有网站,并按照 “alexa” 列排序:

SELECT  *
FROM Websites
ORDER BY alexa

在这里插入图片描述
2.从 “Websites” 表中选取所有网站,并按照 “alexa” 列降序排序:

SELECT  *
FROM Websites
ORDER BY alexa DESC

在这里插入图片描述
3.从 “Websites” 表中选取所有网站,并按照 “country” 和 “alexa” 列排序:

SELECT  *
FROM Websites
ORDER BY country, alexa

在这里插入图片描述

6.INSERT INTO

INSERT INTO 语句用于向表中插入新记录。

6.1 语法

第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:

INSERT INTO table_name
VALUES (value1,value2,value3,...);

第二种形式需要指定列名及被插入的值:

INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);

参数说明:

  • column1, column2, …:要插入的字段名称
  • table_name:要查询的表名称。
  • value1, value2, …:需要插入的字段值。

6.2 示例

Websites表:

idnameurlalexacountry
1Googlehttps://www.google.cm/1USA
2淘宝https://www.taobao.com/13CN
3菜鸟教程http://www.runoob.com/4689CN
4微博http://weibo.com/20CN
5Facebookhttps://www.facebook.com/3USA

1.向 “Websites” 表中插入一个新行。

INSERT INTO Websites (name, url, alexa, country)
VALUES ('百度', 'https://www.baidu.com/','4','CN');

在这里插入图片描述
2.在指定的列插入数据,将插入一个新行,但是只在 “name”、“url” 和 “country” 列插入数据(id 字段会自动更新):

INSERT INTO Websites (name, url, country)
VALUES ('stackoverflow', 'http://stackoverflow.com/', 'IND');

在这里插入图片描述

没有添加的列会自动填充为0

7.UPDATE

UPDATE 语句用于更新表中已存在的记录。

7.1 语法

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition

参数说明:

  • column1, column2, …:要修改的字段名称
  • table_name:要修改的表名称。
  • value1, value2, …:需要修改的字段值。
  • condition:修改条件,用于指定哪些数据要修改。

7.2 示例

Websites表:

idnameurlalexacountry
1Googlehttps://www.google.cm/1USA
2淘宝https://www.taobao.com/13CN
3菜鸟教程http://www.runoob.com/4689CN
4微博http://weibo.com/20CN
5Facebookhttps://www.facebook.com/3USA

1.把 “菜鸟教程” 的 alexa 排名更新为 5000,country 改为 USA。

UPDATE Websites
SET alexa = '5000', country = 'USA'
WHERE name = '菜鸟教程'

在这里插入图片描述

8.DELETE

DELETE 语句用于删除表中的记录。

7.1 语法

DELETE FROM table_name
WHERE condition;

参数说明:

  • table_name:要删除的表名称。
  • condition:删除条件,用于指定哪些数据要删除。

7.2 示例

Websites表:

idnameurlalexacountry
1Googlehttps://www.google.cm/1USA
2淘宝https://www.taobao.com/13CN
3菜鸟教程http://www.runoob.com/4689CN
4微博http://weibo.com/20CN
5Facebookhttps://www.facebook.com/3USA

1.从 “Websites” 表中删除网站名为 “Facebook” 且国家为 USA 的网站。

DELETE FROM Websites
WHERE name = 'Facebook' AND country = 'USA'

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣257(关于回溯算法)二叉树的所有路径

257. 二叉树的所有路径 一.问题描述 已解答 简单 相关标签 相关企业 给你一个二叉树的根节点 root &#xff0c;按 任意顺序 &#xff0c;返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 示例 1&#xff1a; 输入&#xff1a;root [1,2,3,null,5…

Redis有哪些常用应用场景?

大家好&#xff0c;我是锋哥。今天分享关于【Redis有哪些常用应用场景&#xff1f;】面试题。希望对大家有帮助&#xff1b; Redis有哪些常用应用场景&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Redis 是一个高性能的开源键值对&#xff08;Key-Va…

【2024年华为OD机试】(A卷,100分)- 处理器问题(Java JS PythonC/C++)

一、问题描述 题目描述 某公司研发了一款高性能AI处理器。每台物理设备具备8颗AI处理器&#xff0c;编号分别为0、1、2、3、4、5、6、7。 编号0-3的处理器处于同一个链路中&#xff0c;编号4-7的处理器处于另外一个链路中&#xff0c;不通链路中的处理器不能通信。 如下图所…

设计模式-结构型-组合模式

1. 什么是组合模式&#xff1f; 组合模式&#xff08;Composite Pattern&#xff09; 是一种结构型设计模式&#xff0c;它允许将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式使得客户端对单个对象和组合对象的使用具有一致性。换句话说&#xff0c;组合模式允…

HQChart使用教程30-K线图如何对接第3方数据44-DRAWPIE数据结构

HQChart使用教程30-K线图如何对接第3方数据44-DRAWPIE数据结构 效果图DRAWPIEHQChart代码地址后台数据对接说明示例数据数据结构说明效果图 DRAWPIE DRAWPIE是hqchart插件独有的绘制饼图函数,可以通过麦语法脚本来绘制一个简单的饼图数据。 饼图显示的位置固定在右上角。 下…

Proser:升级为简易的通讯调试助手软件

我本来打算将Proser定位为一个直观的协议编辑、发送端模拟软件&#xff0c;像下面这样。 但是按耐不住升级的心理&#xff0c;硬生生的把即时收发整合了进去&#xff0c;就像这样&#xff01; 不过&#xff0c;目前针对即时收发还没有发送历史、批量发送等功能&#xff0c;…

PyTorch环境配置常见报错的解决办法

目标 小白在最基础的环境配置里一般都会出现许多问题。 这里把一些常见的问题分享出来。希望可以节省大家一些时间。 最终目标是可以在cmd虚拟环境里进入jupyter notebook&#xff0c;new的时候有对应的环境&#xff0c;并且可以跑通所有的import code。 第一步&#xff1a;…

【Linux系列】Curl 参数详解与实践应用

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Web基础-分层解耦

思考&#xff1a;什么是耦合&#xff1f;什么是内聚&#xff1f;软件设计原则是什么&#xff1f; 耦合&#xff1a;衡量软件中各个层 / 各个模块的依赖关联程度。 内聚&#xff1a;软件中各个功能模块内部的功能联系。 软件设计原则&#xff1a;高内聚低耦合。 那我们该如何实现…

算法题(33):长度最小的子数组

审题: 需要我们找到满足元素之和大于等于target的最小子数组的元素个数&#xff0c;并返回 思路&#xff1a; 核心&#xff1a;子数组共有n种起点&#xff0c;nums数组的每个元素都可以充当子数组的首元素&#xff0c;我们只需要先确定子数组的首元素&#xff0c;然后往后查找满…

网络数据通信基本流程

1.基本概念 网络通信就是发送数据、接收数据、处理数据的过程&#xff0c;发送数据时要读数据进行处理&#xff08;封装&#xff09;&#xff0c;接收数据时也要对数据进行处理&#xff08;分用&#xff09;&#xff0c; 1&#xff09;封装 对数据进行加工处理&#xff0c;如…

科创驱动 | 华望系统科技荣膺西湖区年度前沿创新新锐企业

2025年1月3日&#xff0c;由中共西湖区党委、西湖区人民政府主办的“新年第一会”—西湖区科技创新大会在杭州隆重举行。大会现场揭晓了西湖区年度科技创新团队与项目&#xff0c;并发布了“2024西湖区科技十大事件”与“西湖区五大年度科技榜单”。杭州华望系统科技有限公司榜…

Java Web开发基础:HTML的深度解析与应用

文章目录 前言&#x1f30d;一.B/S 软件开发架构简述&#x1f30d;二.HTML 介绍❄️2.1 官方文档❄️2.2 网页的组成❄️2.3 HTML 是什么❄️2.4html基本结构 &#x1f30d;三.HTML标签1.html 的标签/元素-说明2. html 标签注意事项和细节3.font 字体标签4.标题标签5.超链接标签…

点亮一个esp32 的led

最近入了一个ESP32 兄弟们&#xff0c;这玩意还可以&#xff0c;买来肯定是给它点亮啊对吧 我就是点灯侠&#x1f387; &#x1f62d;千万不要不接天线啊&#xff0c;不然你会一直找不到你的wifi 1.点灯第一步你得有IDE Arduino 就是这个绿东西 可是怎么下载安装呢&#xff…

CI/CD 流水线

CI/CD 流水线 CI 与 CD 的边界CI 持续集成CD&#xff08;持续交付/持续部署&#xff09;自动化流程示例&#xff1a; Jenkins 引入到 CI/CD 流程在本地或服务器上安装 Jenkins。配置 Jenkins 环境流程设计CI 阶段&#xff1a;Jenkins 流水线实现CD 阶段&#xff1a;Jenkins 流水…

HTB:Bastion[WriteUP]

目录 连接至HTB服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 将靶机TCP开放端口号提取并保存 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机常用UDP端口进行开放扫描 使用enum4linux…

Springboot——钉钉(站内)实现登录第三方应用

文章目录 前言准备1、创建钉钉应用&#xff0c;并开放网页应用2、配置网页应用各项参数发布版本 前端改造后端逻辑1、获取应用免登录 Access_token2、通过免登录 Access_token 和 Auth_Code 获取对应登录人信息 注意事项 前言 PC端的钉钉中工作台&#xff0c;增加第三方应用&a…

马斯克的Grok-2 Beta APP在苹果应用商店上限了,Grok-2安装尝鲜使用教程

马斯克的Grok-2 Beta APP 已经上线苹果商城了&#xff0c;移动端的Grok挺好用的&#xff01;无需登录即可使用&#xff01; &#xff08;文末有安装教程&#xff09; 实测之后&#xff0c;Grok-2 绘画方面个人感觉比GPT-4的绘画还要强一些。而且速度还挺快&#xff0c;可以多次…

深入理解 C 语言中浮点型数据在内存中的存储

文章目录 一、浮点型数据存储格式&#xff08;IEEE 754 标准&#xff09;二、举例说明单精度浮点数存储过程三、绘图说明四、双精度浮点数存储示例&#xff08;以1.5为例&#xff09; 在 C 语言的世界里&#xff0c;数据类型丰富多样&#xff0c;而浮点型数据用于表示实数&…

hutool糊涂工具通过注解设置excel宽度

import java.lang.annotation.*;Documented Retention(RetentionPolicy.RUNTIME) Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER}) public interface ExcelStyle {int width() default 0; }/*** 聊天记录*/ Data public class DialogContentInfo {/**…