在SQL中,您是否可以使用外部提供的参数以字符串格式执行给定的公式?

问题描述

赞:

   name     id
0  john  10002
1   max  10003

公式是基本的数学公式。用一个无法通过sql Select执行的简单示例更新了上面的公式。

解决方法

您可以将其表示为带有参数并使用SELECT的{​​{1}}语句:

sp_executesql
,

如果您知道自己的值类型,则可以执行以下操作:

DECLARE @a INT = 1,@b INT = 1;

DECLARE @FormulaString NVARCHAR(100) = FORMATMESSAGE ('SELECT %i + %i AS Result;',@a,@b );
EXEC ( @FormulaString );

返回

+--------+
| Result |
+--------+
|      2 |
+--------+