[英]Set variable in SQL query
我正在尝试设置变量,但Incorrect syntax near '='.
.
DECLARE @name NVARCHAR(100) = 'Some name'
DECLARE @id INT
EXECUTE ('SET ' + @id + ' = (SELECT mm.mmID FROM dbo.measurem AS mm
WHERE mm.placeName = ''' + @name + ''')')
PRINT @id
如果我这样尝试:
SET @id= (SELECT mm.mmID FROM dbo.measurem AS mm
WHERE mm.placeName = @name)
我must declare variable @name
,尽管我将它作为我的输入存储过程参数。
对于声明变量,您可以通过在 mysql 中声明变量来 go但是您需要执行以下操作才能使其运行<>db-fiddle
SELECT @my_name := 'Some name';
SELECT @id;
SET @s = CONCAT (
'Select mm.mmID into @id From measurem as mm where
mm.placeName='
,''''
,@my_name
,''''
);
PREPARE stmt
FROM @s;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SELECT @id;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.