在select语句中赋值的问题
有一个如下表 t:
f_id f_cityID f_name f_flag
---------------------------
1 1000 天津 无效
2 1000 天津 有效
3 1001 北京 有效
4 1003 上海 有效
DECLARE @fid int;
SELECT @fid=f_ID FROM t WHERE (f_cityID =1000) //根据这个条件返回的记录应该有两行。
select @fid //这里显示的值是2
问题:是否可以理解为在查询时进行了多次赋值,所以@fid的值就是返回记录集中最后一行的记录值?
f_id f_cityID f_name f_flag
---------------------------
1 1000 天津 无效
2 1000 天津 有效
3 1001 北京 有效
4 1003 上海 有效
DECLARE @fid int;
SELECT @fid=f_ID FROM t WHERE (f_cityID =1000) //根据这个条件返回的记录应该有两行。
select @fid //这里显示的值是2
问题:是否可以理解为在查询时进行了多次赋值,所以@fid的值就是返回记录集中最后一行的记录值?
...全文
相关推荐
SQL中SET和SELECT赋值的区别
**一次赋值数量**: - `SET`一次只能赋值一个变量。如果需要为多个变量赋值,需要分别执行多次`SET`语句。 - `SELECT`则可以在一条语句中同时对多个变量进行赋值。
mybatis同一张表多次连接查询相同列赋值问题小结
这个问题主要出现在当我们需要从同一个表中进行多次左连接查询,并且这些查询涉及到相同的列时,可能会导致赋值混乱,使得最终结果不符合预期。首先,我们来看一下问题的背景。
js 触发select onchange事件代码
最后,使用JavaScript代码自动设置select元素的值并触发onchange事件时,要注意兼容性问题。
MySQL中“:=”和“=”的区别浅析
有趣的是,在`SELECT`语句中,"="和":="的使用也有所不同。在某些场景下,":="可以用来在查询过程中动态地改变变量的值,特别是在处理分组或行号的问题时。
SparkSQL相关语句总结.docx
Left Semi JoinSparkSQL 支持 Left Semi Join 语句,用于解决 Exist In 的问题。


应用实例
