Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 单条件多变量分配sql server_Sql Server - Fatal编程技术网

Sql server 单条件多变量分配sql server

Sql server 单条件多变量分配sql server,sql-server,Sql Server,可以在select语句中的单个条件下分配多个变量,如在Visual Basic中: If x=1 then y=2 z=5 End If 我有很多复杂的情况,我不想一次又一次地重复 我有SQL Server 2012。当然,下面是您在t-SQL中的操作方法,我假设您正在使用: DECLARE @y INTEGER DECLARE @z INTEGER IF @x = 1 BEGIN SET @y=2 SET @z=5 END 使用SQL FIDLE查看上述代码的运行情况

可以在select语句中的单个条件下分配多个变量,如在Visual Basic中:

If x=1 then
   y=2
   z=5
End If
我有很多复杂的情况,我不想一次又一次地重复


我有SQL Server 2012。

当然,下面是您在t-SQL中的操作方法,我假设您正在使用:

DECLARE @y INTEGER
DECLARE @z INTEGER

IF @x = 1
BEGIN
  SET @y=2
  SET @z=5
END

使用SQL FIDLE查看上述代码的运行情况。

当然,以下是您在t-SQL中的操作方法,我假设您正在使用:

DECLARE @y INTEGER
DECLARE @z INTEGER

IF @x = 1
BEGIN
  SET @y=2
  SET @z=5
END

SQL FIDLE可以看到上面的代码在运行。

好吧,我真的试图在select语句中实现这一点,by条件不是一个整数测试,而是很多复杂的逻辑。你可以为“复杂的逻辑”创建函数因此,您不必在select语句中一遍又一遍地重复逻辑。我认为函数只返回标量或表?其思想是,如果您有一个复杂的逻辑片段,其中最终结果是一个值,您可以将该逻辑因子化为一个函数,并调用该函数以获取值。无论如何,也许你可以在你的问题中添加更多的细节,问更多的细节,这样就更容易知道你需要什么。我的错误是使用了“变量”一词。我的意思是colums。我真的试图在select语句中实现这一点,条件不是整数测试,而是很多复杂的逻辑。你总是可以为“复杂的逻辑”生成函数因此,您不必在select语句中一遍又一遍地重复逻辑。我认为函数只返回标量或表?其思想是,如果您有一个复杂的逻辑片段,其中最终结果是一个值,您可以将该逻辑因子化为一个函数,并调用该函数以获取值。无论如何,也许你可以在你的问题中添加更多的细节,问更多的细节,这样就更容易知道你需要什么。我的错误是使用了“变量”一词。我是说哥伦布。