sql基本语句大全 sql常用语句大全简书
大家好,今日小华来为大家解答以上的问题。sql基本语句大全,sql常用语句大全简书很多人还不知道,现在让我们一起来看看吧!
sql基本语句大全 sql常用语句大全简书
sql基本语句大全 sql常用语句大全简书
sql基本语句大全 sql常用语句大全简书
1、sp_db ----------查本中所有数据库 可跟库名例:sp_db 库名-------------------------------------------------------------sp_databases -------------查看本中可用的数据库--------------------------------------------------------------------sp_file -------------------查看当前工作着的数据库-----------------------------------------------------------sp_filegroup ---------------查看当前工作着的组的信息。
2、可加参数,跟组名例:sp_db 库名----------------------------------------------------------------sp_renamedb -----------改数据库名例:sp_renamedb 旧库名,新库名----------------------------------------------------------------select groupname from sysfilegroups where status=24---------查看文件组 =8是查只读文件组 =16是查默认文件组 =24是查即只读又默认---------------------------------------------------------------------------sp_dboption ----------修改数据库选项值例:sp_dboption 库名 选项 值值决定真 一般用:true/faule 或off/on表示选项一般常用为:use only(数据库拥有者)single user(单一用户)read only(只读)--------------------------------------------------------------------------dbcc shrinkdatabase ---------收缩数据库例:dbcc shrinkdatabase (库名,10)收缩库,剩余空间保留10%,后面如果不加notruncate,则释放空间作系统,加truncateonly,归还空间给作系统,但忽略所给的百分比数值。
3、----------------------------------------------------------------------dbcc shrinkfile ---------收缩文件用法与ddcc shrinkdatabase相同。
4、----------------------------------------------------------------------alter database ---------------修改数据库用法:这是起始句,告诉要做的是修改数据库,然后再接要做什么工作。
5、每次只做一项工作alter database 库名add file 文件名....to filegroup 文件组名----------------增加库文件,格式与建库时括号里指定大小时的格式一样add log file 文件名 -------------增加日志文件remove file 文件名 ---------删除库内的文件add filegroup 文件组名 -----------增加一个文件组modify file 文件名 -------------修改文件属性modify filegroup 组名 ------------修改文件组属性---------------------------------------------------------------------------drop database --------------删除数据库例:drop database 库名1,库名2 ---------可同时删除两个库------------------------------------------------------------------------create table 表名(列名 类型,列名 类型) -------------------建立表--------------------------------------------------------------------select from 表名 ---------查询表结构--------------------------------------------------------------------select @@dbts ----------查询后一次作--------------------------------------------------------------------insert into 表名(列名,列名)values (变量,变量.....) ------------向表中插入数据如省略列名,则必须把每列的变量填全,不可缺少。
6、可以省略 into--------------------------------------------------------------------sp_addtype 自定义类型名 系统类型名 -------用户自定义类型--------------------------------------------------------------------sp_droptype 自定义类型名 -----------删除自定义类型如有数据库正在使用该自定义类型,则不能删除--------------------------------------------------------------------alter table ---------修改表结构用法: alter table 表名alter column 列名 类型 ---------修改列的类型drop column 列名 --------删除列add (column) 列名 --------增加列,实际用时不加 column-----------------------------------------------------------------sp_ -------------查看数据库中对象信息用法: sp_ 表名 ---------------查表的信息或 sp_ 库名 --------------查库信息后面可以跟库名或者表名,是查数据库或者表的信息-----------------------------------------------------------------sp_spaceused --------查看对象占用的空间信息用法: sp_spaceused ----------查当前库占用空间信息或 sp_spaceused 表名 ----------查指定表占用空间信息后面可以加表名查看表占空间信息。
7、如不加,则查看当前数据库。
8、------------------------------------------------------------------sp_depends ------------查看对象的相关性用法: sp_depends 表名 -----------后面加表名------------------------------------------------------------------sp_rename ---------------重新命名用法: sp_rename 旧表名,新表名 ---------改表名或 sp_rename '表名.旧列名','新列名' 'column' -------修改列名--------------------------------------------------------------------create index --------------创建索引用法: create index 索引名 on 表名 (列名) ------创建索引或: create unique clustered index 索引名 on 表名 (列名)------创建簇集索引 unique是建索引 clustered是建簇集索引---非簇集索引用:nonclustered----------------------------------------------------------------------select top ---------查表中前几行用法: select top 3 from 表名 -------查表中前三行或: select top 10 percent from 表名 -------显示表中前10%数据------------加入percent是百分比的意思。
9、只以大于的小整数,无小数----------------------------------------------------------------------select 列名,列名,列名 from 表名 -------显示表定的列----------------------------------------------------------------------select ,列名 from 表名 ----------查询表中所有,后面再加一列----------------------------------------------------------------------select distinct ----------查询不重复数据 distinct用于去掉重复数据用法: select distinct from 表名 ---------查表中不重复数据或: select distinct into 新表名 from 旧表名 ------查旧表中不重复数据同时生成新表-------------------------------------------------------------------------------------select 列名+列名 from 表名 -------允许有计算式出现,显示无列名的计算结果如想加列名,则: select 列名+列名 as 新列名 from 表名-------------------------------------------------------------------------select 年龄,联系电话,cast (年龄 as varchar(2))+联系电话 from 表名--------把整型数据年龄转化为字符型与字符型数据联系电话相加----------------------------------------------------------------------------ctrl+o(字母O) --------清空数据。
10、空值与别的数据运算结果为空----------------------------------------------------------------------------select 原始列名 别名 from 表名select 原始列名 as 别名 from 表名select 别名=原始列名 from 表名--------指定别名的三种方法。
11、非法符号可''或[]引起来,不得直接使用。
12、----------------------------------------------------------------------------select from 表名where 年龄 between 20 and 30 ---------显示年龄在20到30之间的人-------between是从条件一到条件二之间的限制-----------------------------------------------------------------------select from 表名where 年龄 in (20,21,22) ---------显示年龄为20、21、22的人--------in是限制在这些条件内的,是显示一个取值范围-----------------------------------------------------------------------select from 表名where 联系电话 like '[1-3]%' --------查电话是1-3开头的人--------like是像这些条件的语句,能用通配符:%、_、[]、[^]--------意思分别代表:所有字符、一个字符、一位上可取值、一位上不可取值----------------------------------------------------------------------select from 表名where 姓名 like '[e[]%'or 姓名 like '%e]'escape 'e' ------------显示以‘[’开头或以‘]’结尾的所有数据,中间有不显示----------escape ''是指定通配符-----------------------------------------------------------------------------order by ---------给数据排序用法: select from 表名order by 年龄 -----------排序显示年龄。
13、默认为升序(asc)要降序必须加desc------------------------------------------------------------------------select distinct top 3 from 表名order by 年龄 desc --------显示的三种年龄-------------------------------------------------------------------------select from 表名where 年龄 in (select distinct top 3 年龄 from 表名 order by 年龄)order by 年龄 -----------显示年龄小的所有人,并排序-------------------------------------------------------------------------select 姓名,casewhen MCSE成绩 >=80 and MCSE成绩then '考的不错'when MCSE成绩 >=60 and MCSE成绩then '考的一般'when MCSE成绩 >=0 and MCSE成绩then '不及格'when MCSE成绩 is nullthen '这小子没考试'else '异常数据'endMCSE成绩from 表名-----------判断语句 null是空值的意思,不能用等号连接,只能用is-----------case到end为一列里的判断,case在这里是取值,结果用于输出,不显示原值-----------------------------------------------------------------------------select 列名1,case 列名2when 1 then '男生'when 0 then '女生'else '未知'endfrom 表名--------这里case取列名,是用于这一列每项取值比较,在这里列名2用的是bit型数据-------------------------------------------------------------------------select into 库1.表1 from 库2.表2-----------把库2中表2移到库1中------------------------------------------------------------------------数据维护三个命令:insert ---------向表中插入数据update ---------修改表中的数据delete ---------删除表中的数据------------------------------------------------------------------------insert into 表名 -----------(into可有可无)(列1,列2,列3,列4) -----------表的原始列,用括号括起来values ----------有这条命令只能插入一条数据(数1,数2,数3,数4) ----------插入的数值---------可以省略原始列清单,但必须把所有列都赋值------------------------------------------------------------------------insert into 表1(列1,列2,列3,列4)select from 表2 where =1----------将表2中列等于1的数据信息插入表1中-------------------------------------------------------------------------update 表名set 姓名='丁一'where 姓名='李一' ----------把表中姓名叫李一的改为丁一。
14、------------where后面跟定位的列与值-------------------------------------------------------------------------update 表名set 学号=14,姓名=陈强where 学号=1 ------------把学号为1的同学改为学号14,姓名陈强-----------------------------------------------------------------------update 表名set 学号=年龄+7,姓名='陈一强',年龄=29where 学号=14-------把学号为14的同学资料改为年龄加七赋给学号姓名改为陈一强,年龄改为29-------如果没用where定位,则修改全部值------------------------------------------------------------------------delete 表名where 学号>30 ---------把学号大于30的资料删除--------如不指定条件,则删表内所有数据。
15、这是记录日志文件的作----------------------------------------------------------------truncate table 表名-------清空表。
16、不记录日志文件的作。
17、--------------------------------------------------------------------create view 图名 -------------新建视图用法: create view 图名asselect 列名 from 表名------------------------------------------------------------------------------syscomments ------------这个表存着视图代码的信息------------------------------------------------------------------------------alter view 图名with encryptionasselect 列名 from 表名 -----------用with encyption语句给视图原代码加密-------------不可恢复,除非保留源代码------------------------------------------------------------------------------sp_text 图名 -----------查看视图源代码-----------------------------------------------------------------------------select text from syscommentswhere id =(select id from sysobjects where name ='图名')---------查视图的代码-----------------------------------------------------------------------------create view 图名asselect from 源图名 ------------基于源图创建新视图-----------------------------------------------------------------------------create view 图名asselect 列1 as 新列1,列2 新列2,列3=新列3 ---------起别名的三种方法from 表名 -----------在新视图中为列起别名,则所见的是新起的别名-----------------------------------------------------------------------------sp_depends 表名 -----------查该表的相关性,有多少表、图与之相关。
本文到这结束,希望上面文章对大家有所帮助。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系 836084111@qq.com 删除。