1、select 1是什么意思?
ANS:select 1 from mytable;select anycol(目的表集合中的任意一行) from mytable;与select * from mytable 作用上来说是没有差别的,都是查看{{是否有记录}},一般是作条件用的。select 1 from 中的1是一常量,查到的所有行的值都是它,但从效率上来说,1>anycol>*
2、SQL server 存储过程中怎么将变量赋值
--SQL赋值语句
DECLARE @test1 INT
SELECT @test1 = 111
SET @test1 = 222
--SQL函数赋值,假定count()是自定义函数
DECLARE @test2 INT
SELECT @test2 = COUNT(*) FROM sys.sysobjects
--SQL存储过程赋值,直接传参处理(类似C语言中的指针吗)
IF OBJECT_ID('sp_test') IS NOT NULL DROP PROCEDURE sp_test
GO
CREATE PROCEDURE sp_test(@test INT OUTPUT)
AS
BEGIN
SELECT @test = 999
END
GO
--执行
DECLARE @test3 INT
EXEC sp_test @test3 OUTPUT
SELECT @test3
DROP PROCEDURE sp_test
GO
3、如何创建一个带有返回值的存储过程
create procedure proc_Login
@UserName varchar(20),
@UserPwd varchar(20)
--@returnValue int output--该关键字表明为外部变量
as
declare @returnValue int
begin
if exists(
select 1--UserName
from tb_User
where UserName=@UserName and UserPwd=@UserPwd
)
begin
set @returnValue=1
return @returnValue
end
else
begin
set @returnValue=2
return @returnValue
end
end
go
阅读(3222) | 评论(0) | 转发(0) |