SQL 的一个SELECT语句解释一下.
来源:百度知道 编辑:UC知道 时间:2024/06/16 04:26:46
SQL 语句:
DECLARE @userId int
Select @userId=userid
FROM TableName
这个Select执行成功,但是啥都没有显示啊...
请高说一下.就是@userId=userid这里不懂...他不是放在where里.
他是放在select的字段里.这是怎么回事?
经过你们的提示...
我再次自己试了:
Declare @userId int
set @userId=1 --这里就算你怎么赋怎么也没有用的.
select @userId=userid FROM TableName
其实以上这个句是将TableName里的userid字段的所有值中的最后一个值赋给了@userId参数.
select userid from TableName
通过以上这句就可以看到.
userid
4
2
1
3
所以在
Declare @userId int
set @userId=1 --这里就算你怎么赋怎么也没有用的.
select @userId=userid FROM TableName
这些代码执行后,@userId是等于3的.
如果以下
select userid from TableName
通过以上这句就可以看到.
userid
1
2
3
4
那么
Declare @userId int
set @userId=1 --这里就算你怎么赋怎么也没有用的.
select @userId=userid FROM TableName
的@userId的最后值就是4了.
可以用:
Select @userId as 'UserId'看到结果.
DECLARE @userId int
Select @userId=userid
FROM TableName
这个Select执行成功,但是啥都没有显示啊...
请高说一下.就是@userId=userid这里不懂...他不是放在where里.
他是放在select的字段里.这是怎么回事?
经过你们的提示...
我再次自己试了:
Declare @userId int
set @userId=1 --这里就算你怎么赋怎么也没有用的.
select @userId=userid FROM TableName
其实以上这个句是将TableName里的userid字段的所有值中的最后一个值赋给了@userId参数.
select userid from TableName
通过以上这句就可以看到.
userid
4
2
1
3
所以在
Declare @userId int
set @userId=1 --这里就算你怎么赋怎么也没有用的.
select @userId=userid FROM TableName
这些代码执行后,@userId是等于3的.
如果以下
select userid from TableName
通过以上这句就可以看到.
userid
1
2
3
4
那么
Declare @userId int
set @userId=1 --这里就算你怎么赋怎么也没有用的.
select @userId=userid FROM TableName
的@userId的最后值就是4了.
可以用:
Select @userId as 'UserId'看到结果.
这句话意思是给@uerId赋值
不过这句话有问题,如果TableName里有多条,
变量就是 数据库中最后一条userid
在这里的意思是给@userId 赋值
这时候如果 TableName 里面有多个userid
就会得到最后1条
你再打print @userId
就能看到了
DECLARE @userId int
Select @userId=userid
FROM TableName
Select @userId
@userId 这个是应该变量,是把找到的数据放到该变量里,不显示
你再select @userid 就有结果了