是否有人能确定SET和SELECT在the中的功能/性能差异(如果有的话)?在什么情况下,我应该选择一个而不是另一个?
更新:
感谢所有回应的人。正如一些人指出的那样,这由Narayana Vyas Kondreddi撰写的文章有很多好的信息。在阅读了这篇文章之后,我还仔细阅读了这篇文章,发现了由瑞安·法利编写的瑞安·法利浓缩版,它提供了一些亮点,并认为我可以分享它们:
发布于 2009-05-15 02:42:18
SET是将值赋值给变量的ANSI标准方法,而SELECT不是。但是可以使用SELECT一次将值赋值给多个变量。SET允许您一次只将数据分配给一个变量。因此,在性能上,SELECT将成为赢家。
有关更多细节和示例,请参阅:为变量赋值时SET和SELECT之间的差异
发布于 2009-05-15 02:45:45
Server:您必须使用SELECT的一种情况是在分配@@ERROR和@@ROWCOUNT时必须在相同的语句中设置它们(否则它们会被重置):
SELECT @error = @@ERROR, @rowcount = @@ROWCOUNT(SET一次只处理一个值)
发布于 2009-05-15 02:44:49
https://stackoverflow.com/questions/866767
复制相似问题