sql插入新的一列_SQL基础内容介绍

从今天开始,就要正式和SQL语句接触了。我们主要以MySQL的语句举例说明,其它类型的RDBMS语句也大同小异,只有个别地方有所区别。

SQL书写基本规则

1.每一条语句,最后必须以分号(;)结尾。

2.语句的关键字(具有一定功能)、表名、列名都对大小写不敏感,也就是说不区分大小写。尽管如此,为了便于理解,有时也可将关键字和表的首字母大写。

3.语句的内容之间,要用空格分开,不要连在一起写。

数据库和表的创建

首先我们当然要建立一个自己的数据库了,像之前那样用命令行登录MySQL。然后用create database name;语句来建立你数据库,这里的name就是你要创建的库的名字:

afdb040e8575a55b865e6afadc9973ef.png

这里我们建立了一个名为“shell”的数据库。库的名称包括之后的表名、列名,只能用英文字母、数字和下划线(_)来创建。之后我们就要在库里面创建表了,需要先声明表名、列名等其他内容:

951823b3392af46fdd89b5416dfb3136.png

如上图,我们创建了一个叫做‘cargo’的表,下面有3列内容:最左边是列的名字,可以看到共有6列,中间是列的数据类型,右边是列的约束条件,最下面一行primary key也是约束条件。

其中,列的数据类型必须声明。上图共出现了4种数据类型,我们挨个来看。首先是CHAR(3),代表固定长度字符串,括号中的3代表字符串的最大长度为3,若长度小于3,会自动补齐。其次是DATE,代表日期类型,意思就是date这一列都是日期类的数据。接着是VARCHAR(50),代表可变长度字符串,括号中的50同样表示最大长度为50,但若长度小于50,不会自动补齐。最后是INTEGER,代表整数型,意味着这一列只能输入整数,不能输入小数。

再来看看约束的设置,上图中id、name、type这三列设置了NOT NULL的约束,意为这几列的数据不能为空,必须得填上。最后一行PRIMARY KEY是主键约束,主键保证这一列数据唯一。也就是说id列中的数据不能重复,唯一确定一行。

至此,我们就将表格的框架搭好了,下面就该往“shell”表里插入数据了:

ed94da8df94f7838e35e4128cac92515.png

start transaction表明要开始的事务,最后的commit表示提交事务。中间就是我们要插入的语句,insert into + 表名 + values(数据);插入时都是按一行一行来插,所以数据必须与其对应的列的类型相匹配。在表名和数据值之间我们省略了列名,意味着我们要对所有的列插入数据;如果只想对个别列插入数据,在表名后面加上对应的列的名字即可。

增删改查

插入数据后,我们如何查看表中的内容呢?可以用以下语句来实现:

07bbedb1b44db4a109cfd6d5e2cca5d6.png

select 后面的*代表选择所有列(数据量较大时,不建议这样写),一般我们选取其中几列就可以:

d8e01c6e14d5e174387a701340eb17db.png

如果这个表作废,我们想删除掉呢?可以使用

drop table shell;

需要注意的是,删除掉的表是无法恢复的,所以要谨慎操作。

如果想在表中添加某些列呢?

alter table shell add column 列名 数据类型;

删除某一列:

alter table shell drop column 列名;

改变表的名字:

rename table shell to 新表名;

为列设定别名

有时为了方便查询和便于理解,我们会给列名设定一个其他的名字。只需在原列名后加入AS关键字即可:

bde3826cd33b1c3ae5b3e64d99a6145c.png

注意,如果别名是中文,必须用双引号(英文状态)括起来才可以。as关键字同样不区分大小写。

select语句后也可以有常数:

faf3c743b108cb229d9ce2bee4a60c23.png

如上图,结果会将每一行都加入此常数。这个常数可以是字符串、数字,也可以是日期。

删除重复行

如果我想知道这个表总共有多少种类型的数码产品呢?我们需要用distinct关键字来去重:

cea6c24a1b4d697eee69b973324fe26e.png

可以看到,去重后,共有5种类型。原来我们有6行数据,有2行是重复类型。如果distinct作用于多列,只有这几列的行数据完全一致,才会被删除。

where语句筛选行

之前我们的查询结果都是返回的所有行,如果我只想要其中一部分的数据呢?比如:

2b325d7f57d181b4a500913c7f8724c5.png

上图只返回了电脑类型的一些列,而其他手机、耳机等类别被where语句筛选掉了,where关键字后面跟一些条件表达式即可。

最后需要注意的是,SQL中语句的书写顺序是固定的,不可随意更改。正确的顺序如下:

select...

from...

where...;

一个语句最后的分号必须要写,切记!

今天的内容到此结束,SQL语句的长征才刚刚开始。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值