SQL核心基础语法—快速入门MySQL

news2024/11/17 0:26:10
1.MySQL简介

MySQL其实是DBMS软件系统,也就是说MySQL并不是一个数据库,这是很多人的误区。我们经常听到的Oracle,MySQL,微软SQL Server,都是DBMS软件系统,我们只是通过这些系统来管理和维护数据库而已,DBMS相当于用户和数据库之间的桥梁。

目前有超过300种不同的DBMS系统,我们今天要学习的MySQL是关系型数据库,关系型数据库的数据存储模型很像Excel,用行和列组织数据。

操作关系型的DBMS系统,大多数都是用SQL来管理数据,学会了SQL,就相当于学会了这些DBMS的核心。

2.SQL简介

MySQL是可以管理多个数据库的,这些数据库肯定是要存放在某台主机上的,可以是自己的电脑,也可以是服务器上,因此数据库往上一级就是服务器,在现实当中有些服务器就专门用来作为数据库的,每台服务器还可以有多个数据库,在MySQL里的数据库被称为Schema

我们可以将MySQL想象成Excel,那么数据库就是不同的xls文件,其中数据库里可以有不同的table,相当于excel里的不同标签。

3.增:连接/数据库/表格

创建数据库使用 CREATE DATABASE 后面加上数据库名

在一般情况下,Windows和MacOS里的MySQL是不区分大小写的。(但CREATE DATEBASE是关键字,所以一般大写与其他作区分)

在创建好数据库后使用 CREATE TABLE 表格名

CREATE TABLE MyTable (
   Lie1 INT,
   Lie2 VARCHAR(),
   Lie3 DATE
);

与创建数据库不同的是,我们需要为表格设置列名,相当于Excel里的表头,还要设置每列的数据类型,如整数,字符串等,使用时候要用括号来限定字符个数。注意我们需要用逗号来隔开不同列。

除了数据类型外,我们还可以设置一些其他限制,比如 NOT NULL非空,这样就保证了我们后期增加数据的时候如果不输入内容就会出错;同理可以输入NULL,表示可以为空,如果不输入就是默认值;以及AUTO_INCREMENT,可以帮我们自动递增数字等等。

此外,我们还会设置PRIMARY KEY进行主键约束,虽然不设置也不会报错,但后续工作要求我们设置一个主键以便更好的找到对应表。

UES text;

CREAT TABLE APP_record (
   id INT PRIMARY KEY AUTO_INCREMENT,
   goods_name VARCHAR(10) NOT NULL,
   sold DATE NULL
);

在初始设置了一个数据库后,我们还可以再向其中插入表格,插入对应的当然是 INSERT INTO 表格名。我们也可能同时插入不同的数据到不同的数据库,可以使用 INSERT INTO 数据库.表格名 来表明插入到哪个数据库的哪个表格里。

INSERT INTO text.APP_record (id,goods_name,sold)
VALUES (1,'鸡蛋','2024-07-25');

INSERT INTO text.APP_record
VALUES (2,'鸭蛋','2024-07-25');

INSERT INTO text.APP_record
VALUES (DEFAULT,'松花蛋',NULL);
4.改:更新表格

更新表格可以使用ALTER TABLE,再设置数据类型和默认条件就可以了

ALTER TABLE text.APP_record
ADD stock INT NULL;

当我们需要更新数据的时候,就可以使用UPDATE来更新,要更新哪一行的数据就可以使用WHERE来定位,并且加上条件,需要设置具体更新内容,因此还需要用SET来设置具体值。

UPDATE text.APP_record
SET sold = '2024-07-26'
WHERE id = 3;

5.删:数据/表格/库

如果要删除某些数据,就可以使用DELETE FORM加上WHERE来进行删除

DELETE FIRM text.APP_record
WHERE id = 1;

如果要删除整个表格,我们可以直接使用DROP TABLE,同理如果想要直接删除整个数据库,可以使用DROP DATEBASE。

6.查:选择/去重/排序/过滤

如果要查看全部内容,SELECT后面就跟上星号,并且在FROM后面接上表格的名字,如果要查看某一列的数据,就在SELECT后面接上列名就好了。

 在查询到的数据中出现重复数据是正常的,我们可以使用DISTINCT关键字来去重。

如果要使用排序,我们可以使用ORDER BY,如果我们不加任何限定条件,就默认为ASE(从低到高,从小到大)排序,还可以手动加上DESE,表示逆序。

如果要进行数据过滤,就又需要用到WHERE关键字了,放在表格名字后面。

需要注意的是,这里使用WHERE关键字,常常要和各种运算符一起使用

7.查:连接

如果我们要使用交集的方式合并两个表格的数据,我们就要使用INNER JOIN,但是在此请注意,我们表格的哪一行对应另一个表格的哪一行是要确定条件的,因此JOIN还要用ON来确定条件。

此外还有左连接右连接等,在此不做过多演示,大体意思是一样的,想了解的可以自己上网搜索资料。

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

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

相关文章

系统架构师(每日一练7)

每日一练 1.关于网络延迟正确的是()。答案与解析 A.在对等网络中,网络的延迟大小与网络中的终端数量无关 B.使用路由器进行数据转发所带来的延迟小于交换机, C.使用internet服务器可最大程度地减小网络延迟 D.服务器延迟的主要影响因素是队列延迟和磁盘10延迟 2.以…

# redis 高级应用--使用 redis 消息队列完成秒杀过期订单处理(2)

redis 高级应用–使用 redis 消息队列完成秒杀过期订单处理(2) 一、springDataRedis 中定义消息的监听器 1、在 JAVA 程序中监听 redis 消息:配置监听 redis 的消息。 如果要在 java 代码中监听 redis 的主题消息,需要自定义处…

Android 列表或网格形式展示大量数据:RecyclerView

目录 RecyclerView是什么如何使用RecyclerView 涉及到的类LayoutManager为Item设置不同的布局样式制作拖动的RecyclerView 一、RecyclerView是什么 RecyclerView是Android支持库中的一个控件,用于在列表或网格形式展示大量数据。它是ListView的升级版&#xff0c…

Mybatis(三) 查询不同数据封装的方式

实体类&#xff1a; 数据库&#xff1a; 1、查询一个实体类对象 /** * 根据用户id查询用户信息* param id * return */User getUserById(Param("id") int id);<select id"getUserById" resultType"User">select * from t_user where id …

乐尚代驾六订单执行一

加载当前订单 需求 无论是司机端&#xff0c;还是乘客端&#xff0c;遇到页面切换&#xff0c;重新登录小程序等&#xff0c;只要回到首页面&#xff0c;查看当前是否有正在执行订单&#xff0c;如果有跳转到当前订单执行页面 之前这个接口已经开发&#xff0c;为了测试&…

MySQL练习(5)

作业要求&#xff1a; 实现过程&#xff1a; 一、触发器 &#xff08;1&#xff09;建立两个表&#xff1a;goods&#xff08;商品表&#xff09;、orders&#xff08;订单表&#xff09; &#xff08;2&#xff09;在商品表中导入商品记录 &#xff08;3&#xff09;建立触发…

Nuxt3:ERROR [nitro] [unhandledRejection] connect ECONNREFUSED ::1:80

Nuxt3对接接口时报错 &#xff1a;ERROR [nitro] [unhandledRejection] connect ECONNREFUSED ::1:80 排查了很久配置&#xff0c;端口等都是没问题的&#xff0c;但是如果直接将访问地址修改完整访问是没有问题但是我们会遇到跨域问题可以参考Nuxt3&#xff1a;跨域-CSDN博客…

Java连接Redis和SpringBoot整合Redis

1. Java连接Redis 思考&#xff1a;我们之前操作redis都是通过命令行的客户端来操作。在开发时都是通过java项目操作redis java提高连接redis的方式为jedis。我们需要遵循jedis协议。 java提供连接mysql的方式为jdbc。 1.1 单机模式 引入依赖 <!--引入java连接redis的驱动…

Linux---01---安装VMware

一. 什么时Linux Linux 是一个开源的类 Unix 操作系统,Linux 是许多计算机硬件的底层操作系统&#xff0c;特别是服务器、嵌入式系统和个人电脑。它支持多种架构&#xff0c;包括 x86、x64、ARM 和 MIPS 等。Linux 因其稳定性、安全性、开源性以及广泛的社区支持而广受欢迎。 …

《人工智能大语言模型技术发展研究报告(2024)》【下载】

《人工智能大语言模型技术发展研究报告&#xff08;2024&#xff09;》下载 自2023年起&#xff0c;大模型技术产品的快速迭代和升级&#xff0c;已经成为全球科技竞争的关键因素。由中国软件评测中心发布的《人工智能大语言模型技术发展研究报告&#xff08;2024&#xff09;》…

安卓开机启动性能优化之-bootchart相关工具使用及查看

背景&#xff1a; 开机启动相关的详细信息&#xff0c;一般都是可以通过logcat中查看boot_progress相关查看&#xff0c;这种方式查看相对不那么方便&#xff0c;毕竟开机过程中涉及的进程较多&#xff0c;要查看也较多&#xff0c;而且还经常需要查看代码才可以对应起来&…

Vue3时间选择器datetimerange在数据库存开始时间和结束时间

♥️作者&#xff1a;小宋1021 &#x1f935;‍♂️个人主页&#xff1a;小宋1021主页 ♥️坚持分析平时学习到的项目以及学习到的软件开发知识&#xff0c;和大家一起努力呀&#xff01;&#xff01;&#xff01; &#x1f388;&#x1f388;加油&#xff01; 加油&#xff01…

C++知识点:类和对象(自用)

类和对象 1. 类和对象的关系2. 对象指针3. 在堆上创建对象4. 成员访问限定符5. 名字编码&#xff08;Name Mangling&#xff09;6.构造函数7.构造函数的重载8.初始化列表8. 成员变量初始化的顺序&#xff08;通过初始化列表&#xff09;9. 初始化 const 成员变量10. 析构函数11…

【Web爬虫逆向】“企业预警通”模糊查询公司信息,逆向案例实战

“企业预警通”模糊查询公司信息&#xff0c;逆向案例实战 功能介绍效果演示思路分析1、先找到模糊查询的接口2、分析headers与params中参数并进行构造3、JS逆向&#xff0c;跟栈&#xff0c;找到js中key和dataCategory的生成方法&#xff0c;并完成js补码构造4、成功还原key后…

嵌入式中什么是三次握手

在开始前刚好我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「嵌入式的资料从专业入门到高级教程」&#xff0c;点个关注在评论区回复“666”之后私信回复“666”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&#xff01; 在网络数据传输中&#xf…

Mysql的主从复制(重要)和读写分离(理论重要实验不重要)

一、主从复制&#xff1a;架构一般是一主两从。 1.主从复制的模式&#xff1a; mysql默认模式为异步模式&#xff1a;主库在更新完事务之后会立即把结果返回给从服务器&#xff0c;并不关心从库是否接收到以及从库是否处理成功。缺点&#xff1a;网络问题没有同步、防火墙的等…

论文阅读:Deep_Generic_Dynamic_Object_Detection_Based_on_Dynamic_Grid_Maps

目录 概要 Motivation 整体框架流程 技术细节 小结 不足 论文地址&#xff1a;Deep Generic Dynamic Object Detection Based on Dynamic Grid Maps | IEEE Conference Publication | IEEE Xplore 概要 该文章提出了一种基于动态网格图&#xff08;Dynamic Grid Maps&a…

DevExpress WPF中文教程:如何完成GridControl的列和编辑器配置?

DevExpress WPF拥有120个控件和库&#xff0c;将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序&#xff0c;这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件…

基于微信小程序的校园警务系统/校园安全管理系统/校园出入管理系统

摘要 伴随着社会以及科学技术的发展&#xff0c;小程序已经渗透在人们的身边&#xff0c;小程序慢慢的变成了人们的生活必不可少的一部分&#xff0c;紧接着网络飞速的发展&#xff0c;小程序这一名词已不陌生&#xff0c;越来越多的学校机构等都会定制一款属于自己个性化的小程…

Exponential Moving Average (EMA) in Stable Diffusion

1.Moving Average in Stable Diffusion (SMA&EMA) 1.Moving average 2.移动平均值 3.How We Trained Stable Diffusion for Less than $50k (Part 3) Moving Average 在统计学中&#xff0c;移动平均是通过创建整个数据集中不同选择的一系列平均值来分析数据点的计算。 …