sqlserver 局部变量的使用

网络整理 - 07-27

  在SQL中我们或许会使用到局部变量的问题,下面给出微软的两个小例子

  A. 使用 DECLARE

  下例使用名为 @find 的局部变量检索所有姓以 Ring 开头的作者信息。

Use pubs
declare @find varchar(30)
set @find='Ring%'
select au_lname,au_fname,phone
from authors
where au_lname like @find

  @find就是一个局部变量。

  B. 在 DECLARE 中使用两个变量

  下例从 Binnet & Hardley (pub_id = 0877) 的雇员中检索从 1993 年 1 月 1 日起所雇佣的雇员名称。

USE pubs
SET NOCOUNT ON
GO
DECLARE @pub_id char(4), @hire_date datetime
SET @pub_id = '0877'
SET @hire_date = '1/01/93'
-- Here is the SELECT statement syntax to assign values to two local
-- variables.
-- SELECT @pub_id = '0877', @hire_date = '1/01/93'
SET NOCOUNT OFF
SELECT fname, lname
FROM employee
WHERE pub_id = @pub_id and hire_date >= @hire_date

下面是结果集:

fname lname
-------------------- ------------------------------
Anabela Domingues
Paul Henriot

(2 row(s) affected)