oracle更新语句执行顺序,SQL Update语句的执行顺序

SQL Update语句的执行顺序

执行顺序:从左到右,变量优先,逐行更新

摘自CSDN的例子(http://topic.csdn.net/u/20091030/16/7fd75fa6-bdb9-4516-9b27-48aef69703ba.html

http://topic.csdn.net/u/20090904/16/e5dad9c7-fb59-41b9-b28d-e3b71c3e8420.html)

1.变量优先

create table #t (field1 varchar(10),field2 varchar(10))

insert #t select 'a','b'

declare @str varchar(10)

set @str='Test'

update #t set Field1=@str,@str=Field2,Field2=Field1

select * from #t

drop table #t

/*field1     field2

---------- ----------

b          a*/

2.逐步更新

if OBJECT_ID('ta') is not null drop table ta

create table ta(empNo varchar(8) ,empName varchar(20),nIndex int)  --drop table ta

insert into ta

select 'A0001','張三',null

union

select 'A0002','李四',null

union

select 'A0003','王二',null

union

select 'A0004','趑六',null

declare @tmpIndex int

set @tmpIndex=0

update ta set nIndex=@tmpIndex,@tmpIndex=@tmpIndex+1

select * from ta

/*

empNo    empName    nIndex

A0001    張三    1

A0002    李四    2

A0003    王二    3

A0004    趑六    4

*/

(1 行受影响)*/

3.字段之间, 并行执行

create table #t (field1 varchar(10),field2 varchar(10))

insert #t select 'a','b'

declare @str varchar(10)

update #t set Field1=Field2,Field2=Field1

select * from #t

/*

field1     field2

---------- ----------

b          a

*/

1, 先变量再字段

2, 变量之间, 从左到右

3, 字段之间, 并行执行

相关文档:

-- ================================================

-- Template generated from Template Explorer using:

-- Create Procedure (New Menu).SQL

--

-- Use the Specify Values for Template Parameters

-- command (Ctrl-Shift-M) to fill in the parameter

-- values below.

--

-- This block of comm ......

bulk collect是可以看做是一种批获取的方式,在我们的plsql的代码段里经常作为into的扩展来使用。对于select id into v from .... 是一个常用的用法。不过这里只能是返回单条记录的时候,才能使用,如果是有多条记录我们就不能用这样的方式,而是使用fetch和循环的方式,不仅使用麻烦,而且性能也底下,这时我们的bulk coll ......

首先给出两张测试表

a(aid int, adata varchar(20))            b(bid int, bdata varchar(20))

1.join 与 inner join

执行如下语句:

select * from a join b on a.aid = b.bid;

我们会得到如下的结果:

AID ADAT ......

如何连接到另一台机器上的sql server 2005

一、要进行两个地方的设置

1         点开始—程序—sql server 2005 –配置工具—sql server 2005应用配置器 ,如图:

选本地连接和远程连接中的  仅使用tcp/ip或& ......

一、 简单查询

简单的Transact-SQL查询只包括选择列表、from子句和WHERE子句。它们分别说明所查询列、查询的

表或视图、以及搜索条件等。

例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。

SELECT nickname,email

from testtable

WHERE name='张三'

(一) 选择列 ......

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值