好用的updateselectinsertselect

好用的updateselectinsertselect

ID:34756492

大小:59.10 KB

页数:8页

时间:2019-03-10

好用的updateselectinsertselect_第1页
好用的updateselectinsertselect_第2页
好用的updateselectinsertselect_第3页
好用的updateselectinsertselect_第4页
好用的updateselectinsertselect_第5页
资源描述:

《好用的updateselectinsertselect》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、updateselect最常用的update语法是:UPDATESET=,SET=如果我的更新值Value是从一条select语句拿出来,而且有很多列的话,用这种语法就很麻烦第一,要select出来放在临时变量上,有很多个哦第二,再将变量进行赋值。列多起来非常麻烦,能不能像Insert那样,把整个Select语句的结果进行插入呢?就好象下面insertintotable1(c1,c2,c3)(selectv1,v2,v3fr

2、omtable2)答案是可以的,具体的语法如下:UPDATESET(,)=(SELECT(,)FROMWHERE=)WHERE; 下面是这样一个例子:两个表a、b,想使b中的memo字段值等于a表中对应id的name值表a:id,n

3、ame1王2李3张表b:id,ClientName              123(MSSQLServer)语句:updateb  set  ClientName   =a.name   froma,b   wherea.id=b.id  (Oralce)语句:updateb  set  (ClientName)   =  (SELECTnameFROMaWHEREb.id=a.id)updatesetfrom语句格式当where和set都需要关联一个表进行查询时,整个update执行时,就需要对被关联的表进行两次扫描,显然效率

4、比较低。对于这种情况,Sybase和SQLSERVER的解决办法是使用UPDATE...SET...FROM...WHERE...的语法,实际上就是从源表获取更新数据。在SQL中,表连接(leftjoin、rightjoin、innerjoin等)常常用于select语句,其实在SQL语法中,这些连接也是可以用于update和delete语句的,在这些语句中使用join还常常得到事半功倍的效果。UpdateT_OrderFormSETT_OrderForm.SellerID=B.L_TUserIDFROMT_OrderFormAL

5、EFTJOINT_ProductInfo  BONB.L_ID=A.ProductID用来同步两个表的数据!Oralce和DB2都支持的语法:UPDATEASET(A1,A2,A3)=(SELECTB1,B2,B3FROMBWHEREA.ID=B.ID)MSSQLServer不支持这样的语法,相对应的写法为:UPDATEA  SETA1=B1,A2=B2,A3=B3  FROMALEFTJOINBONA.ID=B.ID个人感觉MSSQLServer的Update语法功能更为强大。MSSQLSERVER的写法:UPDATEASETA

6、1=B1,A2=B2,A3=B3FROMA,BWHEREA.ID=B.ID在Oracle和DB2中的写法就比较麻烦了,如下:UPDATEASET(A1,A2,A3)=(SELECTB1,B2,B3FROMBWHEREA.ID=B.ID)WHEREIDIN(SELECTB.IDFROMBWHEREA.ID=B.ID)===============================================================================SELECT...INTO以及insertinto...sel

7、ect总结SELECT...INTO语句创建制表检索.语法SELECTfield1[,field2[,...]]INTO新表[IN外部数据库]FROM源SELECT...INTO语句可分为以下几个部分:部分说明field1,field2欲复制至新表的字段的名称。NewTable欲创建的表的名称。它应遵循标准命名公约.如果NewTable的名称与现存表的名称相同时,将会发生可以捕捉到的错误。Externaldatabase进入外部数据库的路径。有关路径的描述,请参阅IN子句。source从其中选择记录的现存表的名称。它可以是单一表或

8、多重表或一个查询。查看:http://www.aspxuexi.com/sql/sql/2006-4-8/select_insert.htm(用SELECT复制记录和表)说明可以使用生成表查询来存档记录、生成表的复制备份、或生成输出至另一个数据库的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。