如何从 SQL 查询设置变量? [英] How to set variable from a SQL query?

查看:30
本文介绍了如何从 SQL 查询设置变量?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试从 SQL 查询设置变量:

I'm trying to set a variable from a SQL query:

declare @ModelID uniqueidentifer

Select @ModelID = select modelid from models
where areaid = 'South Coast'

显然我没有这样做,因为它不起作用.有人可以提出解决方案吗?

Obviously I'm not doing this right as it doesn't work. Can somebody suggest a solution?

谢谢!

推荐答案

使用 SELECT

SELECT @ModelID = m.modelid 
  FROM MODELS m
 WHERE m.areaid = 'South Coast'

使用SET

SET @ModelID = (SELECT m.modelid 
                  FROM MODELS m
                 WHERE m.areaid = 'South Coast')

查看此问题以了解在 TSQL 中使用 SELECT 和 SET 的区别.

如果这个 SELECT 语句返回多个值(开头不好):

If this SELECT statement returns multiple values (bad to begin with):

  • 当使用SELECT时,变量被赋值为最后一个返回值(如womp所说),没有任何错误或警告(这可能会导致逻辑错误)
  • 使用SET时,会出现错误
  • When using SELECT, the variable is assigned the last value that is returned (as womp said), without any error or warning (this may cause logic bugs)
  • When using SET, an error will occur

这篇关于如何从 SQL 查询设置变量?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆