SQL语言基础操作与语法

简介: 1.SQL简介SQL是用于访问和处理数据库的标准计算机语言.SQL是Structured Query Language的缩写,是结构化查询语言简单易学功能强大只需要说明做什么,不需要说明如何做标准化。SQL语言几乎所有的DBMS(关系数据库)都能通用不区分大小写

1.SQL简介


SQL是用于访问和处理数据库的标准计算机语言.SQL是Structured Query Language的缩写,是结构化查询语言

简单易学

功能强大

只需要说明做什么,不需要说明如何做

标准化。SQL语言几乎所有的DBMS(关系数据库)都能通用

不区分大小写


2.创建表


我们直接用实例来认识并学习SQL语言。先从创建表开始——


2.1创建部门表:


create table dept(
    deptno int primary key,
    dname varchar(9),
    loc varchar(10)
);

这就是SQL语言的样式。我们发现其和JavaScript有些许相似——

语句块结尾用;结束

不同参数间用,分隔

用括号将一个类似“函数”的操作的参数包裹起来

……

其创建的表便是如下的形式:三列,每列代表一个信息,每行的是记录,需要我们一个个后期添加或者批量导入:


部门编号(deptno) 部门名称(dname) 部门所在位置(location)
1 X1部 。。
2 X2部 。。


我们一句一句看

首先create table就是我们的创建表命令,dept是我们命名这张表的名称

deptno是第一列的名字,代表我们的部门编号。int代表整数类型。由于编号需要不重复,我们设置primary key主键类型,表示其不能重复

dname同理就是我们部门名称列的名字。varchar(9)表示长度变化的字符串类型,传入的参数9表示其最大的长度值为9

loc列同理,只不过现在最大长度变成10了


2.2创建员工表


create table employees(
    empno int primary key,
    name char(10) not null,
    deptno int,
    manager int,
    hiredate date,
    salary numeric(7,2)
);


这个和上面的差不多了.不过我们注意到这里多了一些东西---

not null表示这个字段(也就是列)的数据值不能为空

date就是时间类型的数据

char(n)和之前varchar(n)的主要区别就是char是固定长度为n的字符串,之前的是最大长度为n的可变字符串

numeric(x,y)表示一个数值型的数据,x代表的是数字的长度,y代表的是小数的长度。

接下来我们把这张表用可视化的方式举个例子(注意是举个例子而不是程序输出结果哦)

员工号empno name deptno manager hiredate salary
1 掘金酱 掘金吉祥物 张一鸣 2020-01-01 9999.99
...

tips:

注意这里的小数点也算一位的哦

所谓固定长度的char类型其实就是把小于该长度的空间都用空格占位了而已。而varchar则是变长类型,会自适应小于n的字符长度。这里由于markdown规则,要体现空格占位比较麻烦,就不在表格里演示了

varchar和char还有一个比较大的区别就是char最大长度是255字符,varchar最大长度是65535个字节

注意最后一个参数设置完毕之后不需要再加,分隔了哦


2.3创建经理表


员工号 头衔
6 掘金运营经理
...

如果要做出这种类型的表格如何实现呢?

其实和上面两种表格的操作的是一样的——

create table managers(
    empno int primary key,
    title varchar(16)
);

无非是把员工号设置成主键,以防止重复


3.insert插入


数据库是需要实时更新的。当我们需要往表中插入新的记录时,就需要用到insert语句来实现


3.1 为所有字段添加值


这个时候不需要指定字段名称——

insert into 表名 values (字段1的值,字段2的值,……);

我们可以看出,这里虽然不需要指明字段的名称(也就是列的名字),但是我们要保证插入的数据值要与表中字段的名字顺序相同,这样才能对应起来。否则便把记录的值添加到不对应的列了


3.2 为指定的字段添加值


这个时候自然需要你指定出字段的名字——

insert into 表名(字段1名字,字段2名字,字段3名字,...) values(字段1的值,字段2的值,字段3的值,...);


4.主键


5.select查询


当我们需要调用数据的时候,就需要用到select来帮助我们查询相关记录了


5.1查询表中所有字段

select * from 表名

5.2查询表中指定字段

select 字段1,字段2 from 表名

5.3 distinct关键字去重复值


在查询的时候,当我们希望看看有多少不同的值的时候,可以用distinct来去除重复值。

select distinct 字段名 from 表名

注意这里是在select语句中加入了distinct关键字,获得的是去掉重复项的返回值,而非改变原来表里的数据


篇章小结


以上就是SQL语言中最常见操作的基础语法了。掌握这些是最最基本的。之后很多的操作都是在这些操作上进行改动变化的。下期开始我们将引入逻辑控制语句和一些相对需要理解的语句


相关文章
|
3月前
|
SQL 数据管理 关系型数据库
SQL 语言入门:开启数据管理的大门
在数字化时代,数据已成为核心资产,而 SQL 作为操作关系型数据库的标准语言,是数据从业者、程序员及办公人员必备技能。本文从基础概念讲起,详解 SQL 的核心用法,包括数据查询、插入、修改、删除及表结构操作,并通过实例演示帮助读者快速上手。掌握 SQL,不仅能提升数据处理效率,更为深入理解数据管理打下坚实基础。
|
2月前
|
SQL Oracle 关系型数据库
SQL语言小结
针对数据库、表单和数据行的增删改,没有涉及到sql真正的用途也就是查询,sql提供的查询语句的关键字占 sql 语言的一半之多,查询语句还是得单拿出来讲,不然太多了。 因为没有涉及到查询,所以sql的新增和修改都是很笼统的做法,drop、alter drop、delete这些很容易,逻辑性也不强,再次说明sql的真正精髓在于查询,不然为啥叫做结构化查询语言
300 0
|
2月前
|
SQL 关系型数据库 MySQL
(SQL)SQL语言中的查询语句整理
查询语句在sql中占了挺大一部分篇幅,因为在数据库中使用查询语句的次数远多于更新与删除命令。而查询语句比起其他语句要更加的复杂,可因为sql是数据库不可或缺的一部分,所以即使不懂,也必须得弄懂,以上。
250 0
|
3月前
|
SQL Oracle 关系型数据库
Oracle数据库创建表空间和索引的SQL语法示例
以上SQL语法提供了一种标准方式去组织Oracle数据库内部结构,并且通过合理使用可以显著改善查询速度及整体性能。需要注意,在实际应用过程当中应该根据具体业务需求、系统资源状况以及预期目标去合理规划并调整参数设置以达到最佳效果。
343 8
|
12月前
|
SQL 存储 关系型数据库
【MySQL基础篇】全面学习总结SQL语法、DataGrip安装教程
本文详细介绍了MySQL中的SQL语法,包括数据定义(DDL)、数据操作(DML)、数据查询(DQL)和数据控制(DCL)四个主要部分。内容涵盖了创建、修改和删除数据库、表以及表字段的操作,以及通过图形化工具DataGrip进行数据库管理和查询。此外,还讲解了数据的增、删、改、查操作,以及查询语句的条件、聚合函数、分组、排序和分页等知识点。
1069 56
【MySQL基础篇】全面学习总结SQL语法、DataGrip安装教程
|
9月前
|
SQL 存储 缓存
YashanDB SQL语言
YashanDB SQL语言
|
10月前
|
SQL 数据可视化 IDE
SQL做数据分析的困境,查询语言无法回答的真相
SQL 在简单数据分析任务中表现良好,但面对复杂需求时显得力不从心。例如,统计新用户第二天的留存率或连续活跃用户的计算,SQL 需要嵌套子查询和复杂关联,代码冗长难懂。Python 虽更灵活,但仍需变通思路,复杂度较高。相比之下,SPL(Structured Process Language)语法简洁、支持有序计算和分组子集保留,具备强大的交互性和调试功能,适合处理复杂的深度数据分析任务。SPL 已开源免费,是数据分析师的更好选择。
|
SQL 存储 关系型数据库
SQL `CREATE DATABASE` 语法
【11月更文挑战第10天】
397 3
|
SQL 关系型数据库 数据库
sql语法
【10月更文挑战第26天】sql语法
209 5
|
SQL 数据库
SQL数据库基础语法入门
[link](http://www.vvo.net.cn/post/082935.html)