SQL的学习二

      昨天已经整理到了like与通配符的使用,接下来还有一些关键字需要继续的学习,当然也都是很简单的东西

          

1.数据操作语言DML
①IN操作符允许我们在Where字句中规定多个值
语法:
select 列名称 from 表名称 where 列名称 IN(value1,value2,....)
②BETWEEN操作符在WHERE子句中,作用时选取介于两个值之间的数据范围
语法:
select 列名称 from 表名称 where 列名称 Between value1 and value2
③ Alias(别名) 通过使用SQL 可以为列名称和表名称指定别名
语法:
select 列名称 as 别名 from 表名称 as 别名
SELECT po.OrderID, p.LastName, p.FirstName FROM Persons AS p, Product_Orders AS po WHERE p.LastName='Adams' AND p.FirstName='John'
④ Join 用于根据两个或者多个表中的列之间的关系,从这个表中查询数据
select Persons.lastname, Persons.firstname,Orders.OrderNo
From Persons,Orders
Where Persons.id_p=Orsers.id_p
等价于
select Persons.lasename,Persons.firstname,Orders.OrderNo
From Persons
inner join Orders
on Persons.id_p=Orders.id_p
Order by Persons.lastname
inner join ......on...... 表示内连接
join:如果表中至少一个匹配,则返回行
left join:及时右表中没有匹配,也从左表中返回所有的行
right join : 即时左表中没有匹配,也要从右表返回所有的行
full join: 只要其中一个表中存在匹配,就返回行
⑤ union操作符 union 操作符用于两个或者多个select 语句的结果集
注意: union内部的select语句必须拥有相同数量的列。列也必须拥有相同类型的数据类型。同时
每条select语句中的列的顺序必须相同
默认的,union操作符选取不同的值。如果允许重复的值,请使用 union all
语法 select 列名称 from 表名称  union select 列名称 from 表名称
⑥ select into 语句可用于创建表的备份文件
语法:select * into 新的表名称 [ in 数据库名称] From 表集合
创建内连接的表
SELECT Persons.LastName,Orders.OrderNo INTO Persons_Order_Backup FROM Persons INNER JOIN Orders ON Persons.Id_P=Orders.Id_P
⑦ create database
用于创建一个数据库
语法 : create database 数据库名称
⑧ create table 用于创建数据库中的表
create table 表名称
( 列名称 数据类型 约束,
列名称 数据类型 约束,
列名称 数据类型 约束
);
⑨Constrints SQL约束
NOT NUll 不为空约束 约束强制列布接受Null的值
unique 约束唯一标识数据库表中的每条记录。
primary key 约束唯一标识数据库表中的每条记录
注意: 一个表中可以右多个unique的唯一约束,但是只能有一个primary key
主键列不能含有NULL的值
主键必须包含唯一的值
每个表都应该有一个主键,并且每个表只能有一个主键
用法: mysql:
create table 表名
id int not null,
lastname varchar(255) not null,
firstname varchar(255),
primary key(id)
other:
create table 表名
id int not null primary key,
lastname varchar(255) not null,
firstname varchar(255)
多个列定义primary key 约束
create table 表名
id int not null,
lastname varchar(255) not null,
firstname varchar(255),
constraint 主键名(自定义) primary key(id,lastname)
添加主键
alter table 表名
add primary key(列名称)
对应的删除主键
alter table 表名称
drop primary key
添加多个列对应的主键
alter table 表名称
add constraint 主键名称 primary key (id,lastname)
对应的删除的主键
alter table 表名称
drop constraint 主键名称
foreign key 外键约束
一个表中的foreign key指向另一个表的primary key
注意: foreign key 约束用于预防 破坏表之间的连接的动作
foreign key 约束也能防止非法数据插入外键列,因为他必须指向哪个表中的值值之一
用法(mysql):
create table 表名
id int not null,
id_p int not null,
lastname varchar(255) not null,
firstname varchar(255),
primary key(id),
foreign key(id_p) references 其他表名(主键列)
other
create table 表名
id int not null,
id_p int not null foreign key references 其他表名(主键列),
lastname varchar(255) not null,
firstname varchar(255),
primary key(id)

check 约束英语限制列中的值的范围
如果对单个列定义check约束 ,那么该列只允许特定的值。
如果对一个表定义check约束,那么此约束在特定的列中的对值进行限制

用法(mysql):
create table 表名
id int not null,
id_p int not null,
lastname varchar(255) not null,
firstname varchar(255),
primary key(id),
foreign key(id_p) references 其他表名(主键列),
check(id>10)
other :
create table 表名
id int not null check(id>10),
id_p int not null,
lastname varchar(255) not null,
firstname varchar(255),
primary key(id),
foreign key(id_p) references 其他表名(主键列)

default 约束用于向列中插入默认值 如果没有规定其他的值,那么江默认值添加到所有的新记录
用法(mysql):
create table 表名
id int not null,
id_p int not null,
lastname varchar(255) not null default 'Wang',
firstname varchar(255),
primary key(id),
foreign key(id_p) references 其他表名(主键列),
check(id>10),
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值