SQL sever小总结

体验一下MySQL与SQL sever的不同吧!

这是我总结的一些SQL sever的一些基本语句

数据库操作:

create database 名

use 名

drop database 名

创建视图及表格:连接查询P41

create view 视图名 as--将以下语句形成的select形成一个视图,以下用on

select 学生.*,系.系编号,成绩--普通的查阅视图应将on改为where

into 新表明--将所形成的一个select建一个表

from 系 inner join 学生 inner join 选课 inner join 课程--inner,right,left,full

on 选课.课程编号=课程.课程编号

on 选课.学号=学生.学号

on 系.系编号=学生.系编号--顺序要相对应

查找内容:P38P43

select * from 学生 as 另外名 where 性别=‘男’ order by 月费 ASC--正向desc逆向

select 系.系编号,系.系名,count(*) as 学生数 from 学生 inner join 系--查询学生数大于500的系的系编号和系名

on 学生.系编号=系.系编号 group by 系.系编号 having count(*)>500--having用来搜索分组group数据,where用来搜索个别数据

select top 1 姓名,年龄 from 学生 order by 年龄 desc --查询年龄最大的学生的姓名与年龄

select top 10 percent with ties 姓名,年龄 from 学生 order by 年龄--同上年龄前10%的同学,with ties制定最后一个记录相同者也返回

创建表格:

create table 表名(

学号 tinyint constrain pk_学生 primary key,

年级 int as left(学号,4)+‘级’

性别 sex constrain ck_学生_性别 check(性别 in(‘男’,‘女’)),--建立check约束及约束名

余额 money as 单价*价格

费用编号 int constrain fk_学生_费用编号 foreign key references 费用表(费用编号),

费用日期 datetime not null default ‘2018-12-12’,--非空否则填默认值

备注text,

primary key(学号,费用编号)--定义双主键)

二进制binary,varbinary,image;字符char,varchar,text;Unicode数据nchar;整型bigint,int,smallint,tinyint;精确性decimal,float货币型money,smallmoney;日期型datetime,smalldatetime;bit型P7

编辑表格内容:

insert into 学生 values(’‘,’‘,null)或insert into 学生(属性1,2,3) values(’‘,’‘,’‘)

delete 学生 where 号码=’123454‘

update 学生 set 月费=月费+50 where 号码=‘534533’

更改表格属性:

alter table 学生 add 身高 decimal(4,1) not null default 18.5

alter table 学生 drop column 性别

alter table 学生 alter column 月费 money

excute SP_rename ‘表.原名’,‘新名’,’类型‘--类型可以为database,object表,column属性,index索引

更改表格约束:

alter table 学生 add constrain  fk_学生_费用编号 foreign key (费用编号) references 费用表(费用编号)

alter table 学生 add constrain  def_学生_备注 default ’‘ for 备注

alter table 学生 add check(性别 in(’男‘,’女‘))

alter table 学生 add primary key(学号)--添加约束

alter table 学生 drop constrain pk_学生--删除约束

定义变量并循环:

declare @n int

set @n=1

while(@n<100)

begin

语句

endP33

创建索引:

create index unique 索引名 on 表(列)

drop index 表.索引名

你可能感兴趣的:(SQL sever小总结)