为了动态地取得一个值供其他sql语句使用,往往需要定义一个变量。而在网上查到的方法是:先定义@name,然后 如 select @name =name from table 1 where id =‘123’。
问题1.请问这样的方法是不是常用的,还有其他方法么?因为变量值只有一个,而select的结果可能有多个,这样(或者在取得多个name的时候)会报错么?
问题2.现在在已经写好的存储过程中的一些语句中例如(insert ..into..select..组合语句)中想加入“@name =”取得查找到的变量的值。如将 其中的insert...into...select name from table 1 where id =‘123’改为insert...into...select @name =name from table 1 where id =‘123’。会影响原来的这些语句发挥的作用么?