基本SQLServer语句献给初学者

基本SQLServer语句献给初学者,第1张

概述创建数据库 CREATE database mydtItcast on primary ( name='mydtItcast_data', fileName='D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\mydtItcast.mdf', size=5MB, maxSize=10MB, filegrowth 创建数据库 CREATE database mydtItcast on primary ( name='mydtItcast_data',filename='D:\Program files\Microsoft sql Server\MSsql10.MSsqlSERVER\MSsql\DATA\mydtItcast.mdf',size=5MB,maxSize=10MB,filegrowth=1MB ) log on ( name='mydtItcast_log',filename='D:\Program files\Microsoft sql Server\MSsql10.MSsqlSERVER\MSsql\DATA\mydtItcast.ldf',size=1MB,maxsize=5MB,filegrowth=10% ) CREATE table Food ( fID int IDentity(1,1) primary key,fname nvarchar(10),fAddress nvarchar(50),--商品的厂商 FacID int not null ) CREATE table Factory ( FacID int IDentity(1,Facname nvarchar(20),FacAddress nvarchar(50),FacDesc nvarchar(20) ) ============================================= drop table myitstudent--删除一个表 CREATE table myItStudent--创建一个表 ( stuID int IDentity(1,--此时这列就是自动增长的列,是主键 stuname nvarchar(10),-- not null,代表不能为空 stuAge int --not null  年龄不能为空 ) 插入 insert INTO food(fname,faddress,facID)VALUES('汉堡包','东南大街',1) insert INTO food(fname,facID)VALUES('饼干','西南大街',2) INSERT INTO factory( Facname,FacAddress,FacDesc)VALUES('肯德基','中国北京','不是中国的') Insert into Food(fname,facID)  select '炒饭','门口饭店',3 union select '炒面',3  union select '炒冰',3  union select '炒菜',3  union select '炒肉',3 insert INTO tblstudent values('刘德华',1,27,'香港','131000','123','2010-01-27',1) 修改 update tblstudent SET tsage=tsage+1 UPDATE tblstudent SET tsage=30 WHERE tsgender='男' AND tsage<25 UPDATE TblStudent set tsname=tsname+'( ^_^ )/~~拜拜' where tsage=30 and tsname='张1忌' 删除 delete FROM student --数据没了  表还有 DROP table student--删除表  delete from food WHERE fID=10--根据条件删除某一条记录 truncate table food--删除的时候 表 还有  数据没了--在删除的时候,ID的值(主键,)相当于重置 --当创建了主外键关系后,如果在外键表中有任何记录引用了主键表中的某条记录,则在主键表中不能删除该记录。同时主键表也不能删除。 create table Employees ( EmpID int IDentity(1,1),--主键约束 Empname varchar(50),--名字在到个字符,姓名不能重复 --len(Empname)>=5 and len(Empname)<=10 --不能重复唯一约束设计添加索引,UQ 唯一键,设置名字列 EmpGender char(2),--只能输入男女--EmpGender='男' or EmpGender='女' EmpAge int,--年龄在-120 同上EmpAge>=0 and EmpAge<=120 EmpEmail varchar(100),--不能重复,必须在-25之间字符 --len(EmpEmail)>5 and len(EmpEmail)<25 EmpAddress varchar(500) ) create table Department ( DepID int IDentity(1,Depname varchar(50) unique not null ) --主键约束选中表单击设计设为主键 --检查约束部门名称必须在到个字之间 --len(Depname)>=5 and len(Depname)<=10 --默认约束 选中列然后下面改默认 --外键约束的时候 选择表 设计 关系 添加就可以了 --如果就想删除,那就在外键表 设计 关系中找到删除规则,和更新规则变成级联就删了 --手动删除一列(删除EmpAddress列) alter table Employees drop column EmpAddress select * from employees --手动删除一列(删除EmpAddress列) --手动增加一列(增加一列EmpAddr varchar(1000)) alter table employees add EmpAddr varchar(100) --手动修改一下EmpEmail的数据类型(varchar(200)) ALTER table employees alter column empemail varchar(200) --为EmpID增加一个主键约束 ALTER table employees add constraint PK_EmpID primary key(EmpID) ----非空约束,为Empname增加一个非空约束 alter table employees alter column empname varchar(50) not null ----为Empname增加一个唯一约束 alter table employees add constraint UQ_Empname unique(Empname) --为性别增加一个默认约束,默认为'男' ALTER table employees add constraint DF_EmpGender default('男') for EmpGender --为年龄增加一个检查约束:年龄必须在-120岁之间,含岁与岁。 alter table employees add constraint CK_EmpAge check(empage>=0 and empage<=120) --然后为Employee表增加一个DepID列。 alter table employees add DepID int --增加外键约束 alter table employees add constraint FK_Employees_Department foreign key (DepID) references Department(DepID) SELECT disTINCT TSname FROM TblStudent---把重复的数据干掉了 == SELECT '数学最高成绩',max(TMath) from Tblscore SELECT max(TMath) as 数学最高成绩 from Tblscore SELECT min(tenglish),max(TMath) from Tblscore SELECT sum(tenglish) from Tblscore--null不参与运算 SELECT avg(tenglish) from Tblscore select count(*) FROM Tblscore--在求总行数的时候 * --求英语成绩 select '英语成绩'=sum(tenglish),tmath FROM Tblscore --查询年龄在20-30岁之间的男学生 select * FROM Tblscore where tmath BETWEEN 120 AND 150  --============================下面两种方法都能查询到 班级ID为1,2,3的所有学生 select * FROM TblStudent where TClassID=1 OR TClassID=2 OR TClassID=3 select * FROM TblStudent where TClassID  IN(1,2,3) ========简单查 select * FROM TblStudent where TSname liKE '张%'--%所有的字符 select * FROM TblStudent where TSname liKE '张_'--_表示的是单个的字符 select * FROM TblStudent where TSname liKE '张__' select * from TblStudent where tSname like '张%' and LEN(tSname)=3 ========= --请从学生表中查询出每个班的班级ID和班级人数: select TClassID as 班级ID,班级的人数=count(*) FROM TblStudent GROUP BY TClassID --请从学生表中查询出每个班的班级ID和班级中男同学的人数 select TsClassID as 班级ID,班级的人数=count(*) FROM TblStudent where TSGender='男' GROUP BY TsClassID --1.热销售商品排名表,【即按照每种商品的总销售数量排序】。 SELECT 商品名称,sum(销售数量) as 商品销售总数量 FROM myorders group BY 商品名称 order BY 商品销售总数量 desc SELECT 商品名称,销售总价= sum(销售数量*销售价格)from myorders group BY 商品名称 HAVING sum(销售数量*销售价格)>3000 order BY 销售总价 desc select 购买人,sum(销售数量) as 购买量 FROM myorders where 商品名称='可口可乐' GROUP BY 购买人 order BY sum(销售数量) desc --统计各个客户对"可口可乐"的喜爱度(既统计每个购买人对“可口可乐”的购买量) select '年纪为'+cast(90 AS VARCHAR(10)) SELECT '年纪为'+convert(VARCHAR(10),90) ---------------字符串的函数 select len('小赵喜欢凤姐,凤姐喜欢老马,老马喜欢老杨')--计算字符串的个数(长度) select datalength('小马f') print ltrim('    哇塞,我去,建了一个表'); print rtrim('    哇塞,建了一个表     '); print ('    哇塞,建了一个表     '); --截取的 select left('小赵猥琐',2); select right('老马邪恶',3); select * from T6 select getdate() 获得当前时间 总结

以上是内存溢出为你收集整理的基本SQLServer语句献给初学者全部内容,希望文章能够帮你解决基本SQLServer语句献给初学者所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1171286.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存