数据库SQL语言

article/2025/8/27 21:47:33

SQL语言基础

大家好,我是大黄。这次我来简单带你们了解一下数据库技术中必不可少的一项——SQL语言。
SQL,英文是Structured Query Language,直面翻译就是结构化疑问语言。所以说明这个语言是有一定的结构的,所以基础阶段不会太困难。

SQL数据库体系结构

任何语言都有属于它的一套固定的标准,SQL主要有3个标准:
ANSI(美国国家标准机构)SQL;
对ANSI SQL进行修改后在1992年采用的标准SQL-92或SQL2;
最近的SQL-99标准,也称为SQL3标准。

以上大家了解一下就行,知道现在普遍使用的是SQL3标准就行,为了凑字数,不重要。下面就开始说一些干货

1.SQL的特点

(1)综合统一。SQL是一种关系型的数据语言。它包含了数据查询、数据定义、数据操纵、数据控制这四个功能。而且有固定的结构,语言风格也统一,可以独立完成数据库生命周记的所有活动。它比非关系型数据语言更简便。而非关系型语句使用起来就相对复杂,修改数据库模式的时候,必须停止现有的数据库运行,转储数据,修改模式编译后再重装数据库。这样一比较,SQL语言的优势就大大体现出来。
(2)高度非过程化。简单来说,用SQL语言进行数据操作的时候,只要指出“做什么”,无须指出“怎么做”,存储路径对于用户来说是透明的,提高了数据的独立性。
(3)面向集合的操作方式。就是操作的对象、查找的结果可以是元组的集合,而不需要一条数据一条数据的操作。
(4)两种使用方式。第一种方式,用户可以在终端键盘上输入SQL命令,对数据库进行操作,称为自含式语言。第二种方式,将SQL语言嵌入到高级语言程序中(比如在一段Java语句中嵌入一段SQL语句),又称为嵌入式语言。
(5)语言简洁、易学易用。SQL语言功能极强,完成和性功能仅仅使用了九个动词。

  • 数据查询:select
  • 数据定义:create、drop、alter
  • 数据操纵:insert、update、delete
  • 数据控制:grant、revork

这也是我为什么说不会太困难,掌握了这九个动词的使用方法就基本能实现数据库的所有的数据操作。

2.SQL支持三级模式结构

其中,视图对应外模式、基本表对应模式、存储文件对应内模式。
在这里插入图片描述
我们从图中可以看出,“视图”不是数据库必备的,但是一个视图可以同时对应多个表,也就是可以同时对多个表建立一个视图,而且一张表也可以建立多个不同的视图。一张表只能对应一个存储文件,但是一个存储文件可以同时存储多张表。
下面我就来说一下SQL的基本语句。

SQL数据定义

SQL的数据定义包括对表、视图、索引的创建和删除。

1.创建表

语句格式:
create table <表名>(<列名><数据类型>[列级完整性约束条件],
<列名><数据类型>[列级完整性约束条件]······,
<表级完整性约束条件>);
列级完整性约束条件有NULL(空)和UNIQUE(取值唯一),如果NOT NULL UNIQUE表示取值唯一,不能取空值。
【例】在csdn数据库中创建一个用户信息表user(pnum,name,nickname,sex,id_num,birth)分别表示用户手机号、姓名、昵称、性别、身份证号、生日。

CREATE TABLE `user` IN csdn
(
pnum CHAR(11) not null UNIQUE,
name VARCHAR(10)not null,
nickname VARCHAR(10) not null UNIQUE,
sex char(1),
id_num cahr(18) not null,
birth date
);

2.修改和删除表

1)修改表
语句格式:
alter table <表名>[add <列名><数据类型>[列级完整性约束条件]]
[drop <完整性约束>]
[modify <列名><数据类型>];
【例】向用户信息表user增加zap“邮政编码”:

alter table 'user'
add zap char(6);

【例】将性别字段数据类型改为int:

ALTER TABLE `user`
MODIFY sex int;

【例】将邮政编码字段删除

alter TABLE `user`
DROP zap;

SQL数据查询

1.select基本结构

语句格式:
SELECT [ALL | DISTINCT] <目标列表达式>[,<目标列表达式>······]
FROM <表名或者视图名>[,<表名或者视图名>······]
WHERE <条件表达式>
[GROUP BY <列名 1>
[HAVING <条件表达式>]]
[ ORDER BY <列名 2> [ASC | DESC] ]
SQL查询中的子句顺序为SELECT、FROM、WHERE、GROUP BY、HAVING、ORDER BY。
其中SELECT、FROM是必须的,HAVING条件子句只能和GROUP BY搭配起来使用。
WHERE 子句的条件表达式中可以使用的运算符:
|  |  ||--|--||  |  |

2.简单查询

简单查询只需要使用3个保留字,即SELECT、FROM、WHERE
【例】查询用户信息表中的所有信息

select * from 'user';

【例】查询用户信息表中性别为男的手机号码

select pnum from 'user'
where sex='男';

3.连接查询

若查询涉及两个及以上的表,则称为连接查询
新建一个用户订单表order(goods_name,account,price,pnum,address)分别为商品名称、数量、价格、用户手机号、地址。
【例】查询性别为男的用户购买地址

select address from 'order','user'
where 'user'.pnum = 'order'.pnum and sex='男';

4.子查询

1)where子查询:将一个查询结果作为另一个查询(更新)操作的条件
【例】查询性别为男的用户的订单信息

select * from 'order'
where pnum in (
select pnum from 'user'
where sex='男');

2)from子句子查询:将一个查询结果看作一张虚拟表提供给其他查询使用
【例】查询购买了青菜的用户名

select nickname from(
select pnum from 'order'
where goods_name='青菜'
)t,'user'
where t.pnum='user'.pnum;

3)select子句子查询:将一个查询结果和其他查询结果进行组合
【例】查询性别为男的用户名以及他的订单订单地址

select address,(
select nickname from 'user'
where sex='男'
)from 'user','order'
where 'user'.pnum = 'order'.pnum;

5.分组查询

【例】查询各类商品的销售总量并按照销量降序排序

select sum(account)销量,goods_name from 'order'
group by goods_name
order by  sum(account) decs;

SQL数据更新

1.插入

如果要在关系型数据库中插入数据,可以指定被插入的元组,或者用查询语句选出一批待插入分元组。
语句格式:
INSERT INTO 基本表名(字段名[,字段名]······)
VALUES(常量[,常量]······);
【例】在用户信息表中插入一条语句

insert into 'user'
values('15131100223','csdn','csdn','男','321282199910010238','1999-10-01');

2.删除

语句格式:
DELETE FROM 基本表名
[WHERE 条件表达式];
【例】删除所有性别为男的用户信息

delete from 'user'
where sex='男';

3.修改

语句格式:
UPDATE 基本表名
SET 列名=值表达式(,列名=值表达式······)
[WHERE 条件表达式];
【例】将所有性别为男的用户的性别改为女

update 'user'
set sex='女'
where sex='男';

好了,关于SQL语言基础就暂时说到这,后续如果还需要什么补充可以给我留言。希望这些对你们有帮助,谢谢!


http://chatgpt.dhexx.cn/article/uoi3x59m.shtml

相关文章

数据库语言

DDL语言 其语句包括动词CREATE,ALTER和DROP。在数据库中创建新表或修改、删除表&#xff08;CREATE TABLE 或 DROP TABLE&#xff09;为表加入索引等。 mysql是一个关系型数据库&#xff0c;库里面包含若干个表&#xff0c;而每一张表都是由行和列组成。 1.关于数据库操作的命…

数据库基础语言

目录 数据库与表的概念 如何操作数据库 数据库连接方式 SQL分类 DDL数据定义语言 DML 数据操作语言 数据库常用数据类型 约束条件 主键约束(PRIMARY KEY) 具有主键约束的字段同时可以使用自增来让DBMS自行对其值进行维护 非空约束(NOT NULL) 唯一性约束(UNIQUE) D…

MySQL-SQL语言

文章目录 SQL语法要求&#xff1a;1、DDL1.1、数据库操作(1) 查询当前数据库(2) 查询当前数据库(3) 创建数据库(4) 创建一个itheima数据库&#xff0c;并且指定字符集(5) 删除数据库(6) 切换数据库 1.2、表操作1.2.1、表的基本操作(1) 查询当前数据库所有表(2) 查看指定表结构(…

只知道SQL数据库?又一国产数据库语言诞生了

一、为什么学习数据库&#xff1f; 学习数据库&#xff0c;你肯定需要先了解它&#xff0c;这样你才知道你为什么要学习它&#xff0c;数据库除了SQL还有一些别的数据库&#xff0c;了解它们的作用&#xff0c;可以在不同的场景选择最符合的一个数据库。 1.1 什么是数据库&am…

比SQL还好用,又一门国产数据库语言诞生了

目录 一、数据库语言的目标1、要说清这个目标&#xff0c;先要理解数据库是做什么的。2、什么样的计算体系才算好呢&#xff1f; 二、SQL为什么不行1、先看写着简单的问题2、为什么 SQL 不行呢&#xff1f;3、再看跑不快的原因4、我们再做个类比&#xff1a; 三、SPL为什么能行…

MySQL数据库——SQL语言

文章目录 MySQL数据库——SQL语言前言一、数据定义语言&#xff08;DDL&#xff09;二、数据操纵语言&#xff08;DML&#xff09;三、事务控制语言&#xff08;TCL&#xff09;四、数据查询语言&#xff08;DQL&#xff09;1.select/for 基本查询语句2.给列起别名&#xff08;…

写着简单跑得又快的数据库语言 SPL

数据库语言的目标 要说清这个目标&#xff0c;先要理解数据库是做什么的。 数据库这个软件&#xff0c;名字中有个“库”字&#xff0c;会让人觉得它主要是为了存储的。其实不然&#xff0c;数据库实现的重要功能有两条&#xff1a;计算、事务&#xff01;也就是我们常说的 OLA…

大数据和云计算有什么关系?

前言 本文隶属于专栏《大数据从0到1》&#xff0c;该专栏为笔者原创&#xff0c;引用请注明来源&#xff0c;不足和错误之处请在评论区帮忙指出&#xff0c;谢谢&#xff01; 本专栏目录结构和文献引用请见《大数据从0到1》 解答 云计算关注资源的分配和利用&#xff0c;侧重…

【云原生|云计算系列】云计算基础概念

欢迎来到云原生专题的云计算系列第一篇博客&#xff0c;我们将探索云计算的基础知识&#xff0c;以帮助您深入了解这个迅速发展的领域。在前一篇博客中&#xff0c;我们介绍了云原生的概念和重要性&#xff0c;强调了它作为云计算的核心理念和实践的关键角色。本篇博客将进一步…

云计算之概念——IaaS、SaaS、PaaS、Daas

云计算通俗来说就是输入/输出和计算不在一个主机上。计算要用到计算设备&#xff0c;计算设备一般是指CPU、内存和硬盘&#xff0c;输入/输出设备一般是指键盘、鼠标、显示器、耳机、音响、话筒等外设。而我们的个人计算机是使用主板将这些东西连接到一起来协调工作。 一个软件…

盘点云计算的概念,分类和特点

云计算主要分为 4 种类型&#xff1a;私有云、公共云、混合云和多云。同时&#xff0c;云计算服务主要有 3 种&#xff1a;基础架构即服务&#xff08;IaaS&#xff09;、平台即服务&#xff08;PaaS&#xff09;和软件即服务&#xff08;SaaS&#xff09;。 怎么选择云类型或云…

云计算(详细解释)

云计算 云计算实现了通过网络提供可伸缩的,廉价的分布式计算能力,用户只需要在具备网络接入条件的地方,就可以随时随地获得所需的各种IT资源.云计算代表了以虚拟化技术为核心,以低成本为目标的,动态可拓展的网络应用基础设施.云计算包括3种典型的服务模式:laas(基础设施即服务…

云计算的概念、原理和关键技术

1 云计算的定义 NIST&#xff08;美国国家标准及技术研究所&#xff09;对云计算的定义&#xff1a; “ 云计算是一种模型&#xff0c;实现无处不在的、方便、通过网络按需访问的可配置的共享计算资源池&#xff08;例如&#xff0c;网络、服务器、存储、应用程序、服务&…

云计算的概念与原理

接下来这几篇将给大家介绍KVM的相关知识&#xff0c;讲到KVM之前我们先了解一下云计算&#xff0c;这也是自己在网上找的一些知识总结。给大家参考一下。 一、云计算的概念 1.1、云是什么 我们可能使用过百度云是吧&#xff0c;就是将自己的文件放到那里去保存&#xff0c;要用…

什么叫云计算?云计算通俗解释

云计算通俗点讲就是把以前需要本地处理器计算的任务交到了远程服务器上去做。仔细给您解释云计算的概念可能比较抽象&#xff0c;我给您举几个云计算的应用实例吧。 第一是webQQ&#xff0c;你访问webqq的时候就会发现这里面有很多像是图片处理&#xff0c;网页浏览&#xff0…

云计算的概念及关键技术

1、云计算的概念 1.1概念 云计算是一种通过互联网访问、可定制的IT资源共享池&#xff0c;并按照使用量付费的模式,这些资源包括网络&#xff0c;服务器&#xff0c;存储、应用、服务等。广泛意义上 来说&#xff0c; 云计算是指服务的交付和使用模式&#xff0c;即通过网络以…

云计算 概念与技术

如果我倡导的计算机在未来得到使用&#xff0c;那么有一天&#xff0c;计算也可能像电话一样成为共用设施。计算机应用将成为一全新的、重要的产业的基础。 ——John McCarthy 云计算的概念 定义 Garther公司的定义 一种计算方式&#xff0c;能通过Internet技术将可扩展的和…

云计算的概念和价值

云计算的概念&#xff1a; 云计算(cloud computing)是一种按是使用量付费的模式&#xff0c;这种模式是可用的、便捷的、按需的网络访问&#xff0c;进入可配置的计算机资源共享池&#xff08;资源包括网络&#xff0c;服务器&#xff0c;存储&#xff0c;应用软件&#xff0c…

什么是云计算?云计算概念集合

云计算的3种服务模式 IaaS&#xff08;基础设施服务&#xff09;&#xff1a;提供给客户的服务是运营商运行在云计算基础设施上的应用程序&#xff0c;用户可以在各种设备上通过客户端界面访问&#xff0c;如浏览器。消费者不需要管理或控制任何云计算基础设施&#xff0c;包括…

云计算的概念

1、云计算概念 云是网络、互联网的一种比喻说法。过去在图像中往往用云来表示电信网&#xff0c;后来也用来表示互联网和底层基础设施的抽象。 云计算&#xff08;Cloud Computing&#xff09;是以虚拟化技术为核心&#xff0c;以低成本为目标的&#xff0c;基于互联网服务的…