【发布时间】:2020-03-11 13:59:55
【问题描述】:
我希望调用SQL CONVERT 函数,同时引用一个变量来设置data_type。
例如:
CONVERT(nvarchar(10), column1, 120)
但我不想指定nvarchar(10),而是要引用一个变量:
CONVERT(@myDataType, column1, 120)
现在@myDataType 可能是nvarchar(10)、nvarchar(7) 或Int,但我不知道使用什么语法。
或者,我想将大小设置为参数:
CONVERT(nvarchar(@mySize), column1, 120)
大小可以是Int。这似乎也不起作用。
这两种可能吗?
【问题讨论】:
-
您使用的是哪个 dbms? (您的代码正在使用产品特定的功能。)
-
不是没有动态 SQL。您想通过使用此功能来完成什么?
-
这是在 MSSQL 中使用 Microsoft SQL Server Management Studio
-
我有时会运行这个查询,它多次使用 CONVERT(nvarchar(10), column1, 120)。有时我需要使用 CONVERT(nvarchar(7), column1, 120) 来运行它。我希望设置一个可以在顶部调整的变量,而不是在需要更改时进行查找/替换
-
更好的问题是为什么将日期时间存储为字符串。计算列(可能超过 1 个)可能是更好的解决方案。
标签: sql sql-server sqldatatypes