数据库基础命令(SQL sever 2012)


数据库的语句对大小写不敏感,故可大写,可小写,并且要注意,语句以及操作符等均要用英文的标点和符号,否则则会出现错误,并且语句之间不一定要分号,但是有分号可以方便阅读
以下均在SQL sever 2012可执行

创建数据库

create database [数据库名称];

Select

select从表中选取数据,结果被存储在一个结果表中(称为结果集)。

use [数据库名称];
select 列名称1,列名称2... from 表名称;

在使用这个语句之前,要表明在哪个数据库里进行执行select语句,并且可以同时选取多个列来进行选择

use [数据库名称];
select * from 表名称;

这个语句表示的是选择所有的列,星号(*)是选取所有列的快捷方式。

distinct

用于返回唯一不同的值,可以在选取一个列的时候除去重复的数据,例如有两个相同的分数,便去除另外一个,保留一个,并不是全部去除

use [数据库名称];
select distinct 列名称 from 表名称;

where

可以进行条件选择,选择一些符合条件的数据

use [数据库名称];
select 列名称 from 表名称 where 条件语句;

下类操作符可以where语句里面操作

操作符描述
=等于
>大于
<小于
<>不等于(在某些版本的SQL中,这个操作符可能写成!=)
>=大于等于
<=小于等于
between在某个范围内
like搜索某种模式
in为列指定多个可能的值

例如:

use 学生成绩;
select 语文成绩 from 成绩 where 语文成绩>90;
select 数学成绩 from 成绩 where 数学成绩=100;

另外还要注意,字符串要加上单引号

use 世界;
select 城市 from 中国 where 城市='北京';

and,or,not

and

可以用在条件语句中,例如where后面,把条件增多,and连接的条件必须均为true,才会显示记录

use [数据库名称];
select 列名称 from 表名称 where 条件语句 and 条件语句 and ...;
or

同and,但用法不同,连接的条件必须有一个为true才可显示记录

use [数据库名称];
select 列名称 from 表名称 where 条件语句 or 条件语句 or ...;
not

not则为显示除去条件之外的记录,且条件为true
例如:

use 学生成绩;
select 语文成绩 from 成绩 where not 语文成绩>90;

这个会显示出语文成绩小于90分的成绩
这三个运算符也可以放在一起使用

select * from Customers
where Country='Germany' and (City='Berlin' or City='München');

SELECT * FROM Customers
WHERE NOT Country='Germany' AND NOT Country='USA';

复合起来的运算记得要带上括号

order by

按关键字排序
用于按升序或降序对结果集进行排序,默认情况下按升序排序记录,如果需要按降序对记录进行排序,可以使用desc关键字,asc是按照升序排序desc是按照降序排序

select 列名称1,列名称2,列名称3...from 表名称
order by 列名称 desc/asc;

可以和where等结合应用

use 北风贸易;
select * from 成绩
where 数学成绩>60
order by 数学成绩

insert

insert into 语句用于向表格中插入新的行。

insert into 表名称  values(1,2,....)

也可以指定所要插入数据的列

insert into 表名称(1,2,3...) values(1,2,....)

例如有下列表格,表格名称为学生信息

名字学号成绩
陈**20*187360
范**20*187580
宋**20*1897100

增加一行数据如下所示

insert into 学生信息 values('卢*','20*1925','70')

表格增加了一行信息,变成下表

名字学号成绩
陈**20*187360
范**20*1875100
宋**20*189780
卢*20*192570

在指定的列中增加信息,如下

insert into 学生信息(名字,成绩) values('胡**','100')

显示内容如下

名字学号成绩
陈**20*187360
范**20*1875100
宋**20*189780
卢*20*192570
胡*100

这里要注意,学号这一项要设置可以为null值,才可以不增加值在里面,如果设置为不与许null值的,就必须要增加值在里面,才可以运行上述SQL语句。这里只是为了展示这个例子,实际情况根据实际需求来增加。

Update

Update 语句用于修改表中的数据。

update 表名称 set 列名称1=新值1,列名称2=新值2... where 列名称=某值

修改下表中胡*的学号与成绩

名字学号成绩
陈**20*187360
范**20*1875100
宋**20*189780
卢*20*192570
胡*100
update 学生信息 set  学号='20*1912',成绩=90 where 名字='胡*';

执行完之后,表如下

名字学号成绩
陈**20*187360
范**20*1875100
宋**20*189780
卢*20*192570
胡*20*191290

Delete

delete 语句用于删除表中的行。

delete from 表名称 where 列名称=

把下表格中卢*删除

名字学号成绩
陈**20*187360
范**20*1875100
宋**20*189780
卢*20*192570
胡*20*191290
delete from 学生信息 where 名字='卢*';
名字学号成绩
陈**20*187360
范**20*1875100
宋**20*189780
胡*20*191290

删除所有行
可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:

delete from 表名称;
delete * from 表名称;

运算符

运算符是保留字或主要用于 SQL 语句的 WHERE 子句中的字符,用于执行操作,例如:比较和算术运算。 这些运算符用于指定 SQL 语句中的条件,并用作语句中多个条件的连词。

算术运算符

假设变量 a 的值是:10,变量 b 的值是:20,以下为各运算符执行结果:

运算符描述例子
+加法,执行加法运算a + b 得到 30
-减法,执行减法运算a - b 得到 -10
*乘法,执行乘法运算a * b 得到 200
/用左操作数除以右操作数b / a 得到 2
%用左操作数除以右操作数并返回余数b % a 得到 0
比较运算符

假设变量 a 的值是:10,变量 b 的值是:20,以下为各运算符执行结果:

运算符描述例子
=检查两个操作数的值是否相等,如果是,则条件为真(true)(a = b) is false
!=检查两个操作数的值是否相等,如果值不相等则条件为真(true)(a != b) is true
<>检查两个操作数的值是否相等,如果值不相等则条件为真(true)(a <> b) is true
>检查左操作数的值是否大于右操作数的值,如果是,则条件为真(true)(a > b) is false
<检查左操作数的值是否小于右操作数的值,如果是,则条件为真(true)(a < b) is true
>=检查左操作数的值是否大于或等于右操作数的值,如果是,则条件为真(true)(a >= b) is false
<=检查左操作数的值是否小于或等于右操作数的值,如果是,则条件为真(true)(a <= b) is true
!<检查左操作数的值是否不小于右操作数的值,如果是,则条件变为真(true)(a !< b) is false
!>检查左操作数的值是否不大于右操作数的值,如果是,则条件变为真(true)(a !> b) is true
逻辑运算符

逻辑运算符的列表

运算符描述
allall运算符用于将值与另一个值集中的所有值进行比较
is nullis null运算符用于将值与NULL值进行比较
anyany运算符用于根据条件将值与列表中的任何适用值进行比较
betweenbetween运算符用于搜索在给定最小值和最大值内的值
existsexists运算符用于搜索指定表中是否存在满足特定条件的行
inin运算符用于将值与已指定的文字值列表进行比较
likelike运算符用于使用通配符运算符将值与类似值进行比较
uniqueunique运算符搜索指定表的每一行的唯一性(无重复项)
in为列指定多个可能的值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值