大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 数据库 -> MS_SQL -> SQL 的一些核心语句

SQL 的一些核心语句

时间: 2021-08-13 作者:daque

插入数据 向表中增添一个新记载,你要运用sql insert 语句。这边有一个怎样运用这种语句的例子:     insert mytable (mycolumn) values (‘some data’) 这个语句把字符串’some data’插入表mytable的mycolumn字段中。将要被插入数据的字段的名字在第一个括号中指定,本质的数据在第二个括号中给出。 insert 语句的完备句法如次: insert [into]  {table_name|view_name} [(column_list)] {default values |                values_list | select_statement} 即使一个表有多个字段,经过把字段名和字段值用逗点隔绝,你不妨向一切的字段中插入数据。假如表mytable有三个字段first_column,second_column,和third_column。底下的insert语句增添了一条三个字段都有值的完备记载: insert mytable (first_column,second_column,third_column)        values (‘some data’,’some more data’,’yet more data’) 提防: 你不妨运用insert语句向文本型字段中插入数据。然而,即使你须要输出很长的字符串,你该当运用writetext语句。这局部实质对该书来说太高档了,所以不加计划。要领会更多的消息,请参考microsoft sql sever 的文书档案。 即使你在insert 语句中只指定两个字段和数据会如何样呢?换句话说,你向一个表中插入一条新记载,但有一个字段没有供给数据。在这种情景下,有底下的四种大概: ■即使该字段有一个缺省值,该值会被运用。比方,假如你插入新记载时没有给字段third_column供给数据,而这个字段有一个缺省值’some value’。在这种情景下,当新记载建登时会插入值’some value’。 ■即使该字段不妨接收空值,并且没有缺省值,则会被插入空值。 ■即使该字段不许接收空值,并且没有缺省值,就会展示缺点。你会收到缺点消息: the column in table mytable may not be null. ■结果,即使该字段是一个标识字段,那么它会机动爆发一个新值。当你向一个有标识字段的表中插入新记载时,只有忽视该字段,标识字段会给本人赋一个新值。    提防:    向一个有标识字段的表中插入新记载后,你不妨用sql变量@@identity来考察新记载 的标识字段的值。商量如次的sql语句:     insert mytable (first_column) values(‘some value’)     insert anothertable(another_first,another_second)         values(@@identity,’some value’)   即使表mytable有一个标识字段,该字段的值会被插入表anothertable的another_first字段。这是由于变量@@identity老是生存结果一次插入标识字段的值。 字段another_first该当与字段first_column有沟通的数据典型。然而,字段another_first不许是该当标识字段。another_first字段用来生存字段first_column的值。 简略记载 要从表中简略一个或多个记载,须要运用sql delete语句。你不妨给delete 语句供给where 子句。where子句用来采用要简略的记载。比方,底下的这个delete语句只简略字段first_column的值即是’delete me’的记载: delete mytable where first_column=’deltet me’ delete 语句的完备句法如次:       delete [from] {table_name|view_name}  [where clause] 在sql select 语句中不妨运用的任何前提都不妨在delect 语句的where子句 中运用。比方,底下的这个delete语句只简略那些first_column字段的值为’goodbye’或second_column字段的值为’so long’的记载: delete mytable where first_column=’goodby’ or second_column=’so long’ 即使你不给delete 语句供给where 子句,表中的一切记载都将被简略。你不该当有这种办法。即使你想简略该当表中的一切记载,应运用第十章所讲的truncate table语句。 提防: 干什么要用truncate table 语句包办delete语句?当你运用truncate table语句时,记载的简略是不作记载的。也即是说,这表示着truncate table 要比delete快得多。 革新记载 要窜改表中仍旧生存的一条或多条记载,应运用sql update语句。同delete语句一律,update语句不妨运用where子句来采用革新一定的记载。请看这个例子: update mytable set first_column=’updated!’ where second_column=’update me!’ 这个update 语句革新一切second_column字段的值为’update me!’的记载。对一切被选中的记载,字段first_column的值被置为’updated!’。 底下是update语句的完备句法: update {table_name|view_name} set [{table_name|view_name}]       {column_list|variable_list|variable_and_column_list}       [,{column_list2|variable_list2|variable_and_column_list2}…        [,{column_listn|variable_listn|variable_and_column_listn}]]        [where clause] 提防: 你不妨对文本型字段运用update语句。然而,即使你须要革新很长的字符串,应运用updatetext语句。这局部实质对该书来说太高档了,所以不加计划。要领会更多的消息,请参考microsoft sql sever 的文书档案。     即使你不供给where子句,表中的一切记载都将被革新。偶尔这是有效的。比方,即使你想把表titles中的一切书的价钱更加,你不妨运用如次的update 语句: 你也不妨同声革新多个字段。比方,底下的update语句同声革新first_column,second_column,和third_column这三个字段: update mytable  set  first_column=’updated!’                     second_column=’updated!’                     third_column=’updated!’                 where first_column=’update me1’ 本领: sql忽视语句中过剩的空格。你不妨把sql语句写成任何你最简单读的方法。 用select 创造记载和表 你大概仍旧提防到,insert 语句与delete语句和update语句有一点各别,它一次只操纵一个记载。但是,有一个本领不妨使insert 语句一次增添多个记载。要作到这一点,你须要把insert 语句与select 语句贯串起来,象如许: insert mytable (first_column,second_column) select another_first,another_second from anothertable where another_first=’copy me!’ 这个语句从anothertable正片记载到mytable.惟有表anothertable中字段another_first的值为’copy me!’的记载才被正片。 当为一个表中的记载创造备份时,这种情势的insert 语句利害常有效的。在简略一个表中的记载之前,你不妨先用这种本领把它们正片到另一个表中。 即使你须要正片所有表,你不妨运用select  into 语句。比方,底下的语句创造了一个名为newtable的新表,该表包括表mytable的一切数据: select * into newtable from mytable 你也不妨指定惟有一定的字段被用来创造这个新表。要做到这一点,只需在字段列表中指定你想要正片的字段。其余,你不妨运用where 子句来控制正片到新表中的记载。底下的例子只正片字段second_columnd的值即是’copy me!’的记载的first_column字段。 select first_column into newtable from mytable where second_column=’copy me!’ 运用sql窜改仍旧创造的表是很艰巨的。比方,即使你向一个表中增添了一个字段,没有简单的方法往返除它。其余,即使你不提防把一个字段的数据典型给错了,你将没有方法变换它。然而,运用本节中报告的sql语句,你不妨绕过这两个题目。 比方,假如你想从一个表中简略一个字段。运用select into 语句,你不妨创造该表的一个正片,但不包括要简略的字段。这使你既简略了该字段,又保持了不想简略的数据。 即使你想变换一个字段的数据典型,你不妨创造一个包括精确数据典型字段的新表。创造好该表后,你就不妨贯串运用update语句和select 语句,把从来表中的一切数据正片到新表中。经过这种本领,你既不妨窜改表的构造,又能生存原有的数据。 汇合因变量 到此刻为止,你只进修了怎样按照一定的前提从表中掏出一条或多条记载。然而,假设你想对一个表中的记载举行数据统计。比方,即使你想统计保存在表中的一次民心考查的开票截止。大概你想领会一个考察者在你的站点上平衡耗费了几何功夫。要对表中的任何典型的数据举行统计,都须要运用汇合因变量。 microsoft sql 扶助五种典型的汇合因变量。你不妨统计记载数量,平衡值,最小值,最大值,大概乞降。当你运用一个汇合因变量时,它只归来一个数,该数值代办这几个统计值之一。 提防: 要在你的asp网页中运用汇合因变量的归来值,你须要给该值起一个名字。要作到这一点,你不妨在select语句中,在汇合因变量反面跟不上一个字段名,如次例所示: select avg(vote) ‘the_average’ from opinion 在这个例子中,vote的平衡值被定名为 the_average。此刻你不妨在你的asp网页的数据库本领中运用这个名字。 统计字段值的数量 因变量count()大概是最有效的汇合因变量。你不妨用这个因变量来统计一个表中有几何条记载。这边有一个例子: select count(au_lname) from authors 这个例子计划表authors中名字(last name)的数量。即使沟通的名字展示了不只一次,该名字将会被计划屡次。即使你想领会名字为某个一定值的作家有几何个,你不妨运用where子句,如次例所示: select count(au_lname) from authors where au_lname=’ringer’ 这个例子归来名字为’ringer’的作家的数量。即使这个名字在表authors中展示了两次,则次因变量的归来值是2。 假设你想领会有各别名字的作家的数量。你不妨经过运用要害字distinct来获得该数量。如次例所示: select count(distinct au_lname) from authors 即使名字’ringer’展示了不只一次,它将只被计划一次。要害字distinct 确定了惟有互不沟通的值才被计划。 常常,当你运用count()时,字段中的空值将被忽视。普遍来说,这恰是你所蓄意的。然而,即使你只是想领会表中记载的数量,那么你须要计划表中一切的记载─尽管它能否包括空值。底下是一个怎样做到这一点的例子: select count(*) from authors 提防因变量count()没有指定任何字段。这个语句计划表中一切记载所数量,囊括有空值的记载。所以,你不须要指定要被计划的一定字段。 因变量count()在很多各别情景下是有效的。比方,假如有一个表生存了对你站点的品质举行民心观察的截止。这个表有一个名为vote的字段,该字段的值要么是0,要么是1。0表白阻碍票,1表白扶助票。要决定扶助票的数目,你不妨一切底下的select 语句: select count(vote) from opinion_table where vote=1 计划字段的平衡值 运用因变量count(),你不妨统计一个字段中有几何个值。但偶尔你须要计划那些值的平衡值。运用因变量avg(),你不妨归来一个字段中一切值的平衡值。 假设你对你的站点举行一次较为搀杂的民心观察。考察者不妨在1到10之间开票,表白她们爱好你站点的水平。你把开票截止生存在名为vote的int型字段中。要计划你的用户开票的平衡值,你须要运用因变量avg(): select avg(vote) from opinion 这个select语句的归来值代办用户对你站点的平衡爱好水平。因变量avg()只能对数值型字段运用。这个因变量在计划平衡值时也忽视空值。 计划字段值的和 假如你的站点被用来出卖卡片,仍旧运转了两个月,是该计划赚了几何钱的功夫了。假如有一个名为orders的表用来记载一切考察者的定购消息。要计划一切定购量的总和,你不妨运用因变量sum(): select sum(purchase_amount) from orders 因变量sum()的归来值代办字段purchase_amount中一切值的平衡值。字段purchase_amount的数据典型大概是money型,但你也不妨对其它数值型字段运用因变量sum()。 归来最大值或最小值 再一次假如你有一个表用来生存对你的站点举行民心观察的截止。考察者不妨采用从1到10 的值来表白她们对你站点的评介。即使你想领会考察者对你站点的最高评介,你不妨运用如次的语句: select max(vote) from opinion 你大概蓄意有人对你的站点赋予了很高的评介。经过因变量max(),你不妨领会一个数值型字段的一切值中的最大值。即使有人对你的站点投了数字10,因变量max()将归来该值。 另一上面,假设你想领会考察者对你站点的的最低评介,你不妨运用因变量min(),如次例所示: select min(vote) from opinion 因变量min()归来一个字段的一切值中的最小值。即使字段是空的,因变量min()归来空值。 

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.