Mic*_*ael 2 t-sql sql-server casting view concatenation
MS SQL Server 2014。
我有一个运行良好的 SQL 语句:
SELECT CONCAT (
CAST(T1.[F1] AS INTEGER),
CAST(T1.[F2] AS INTEGER)
) AS F3
FROM mytable AS T1
Run Code Online (Sandbox Code Playgroud)
如果我然后将其放入视图中,并尝试运行,我会收到错误:
Operand data type int is invalid for concat operator
Run Code Online (Sandbox Code Playgroud)
F1 和 F2 都包含小数,但我希望它们连接,例如:
F1 = 123.00000
F2 = 456.00000
Run Code Online (Sandbox Code Playgroud)
所以F3 = 123456
为什么视图不允许这样做,有解决方案吗?
不要使用视觉设计师。
它们有缺陷,在这种情况下会转换
SELECT CONCAT (
CAST(T1.[F1] AS INTEGER),
CAST(T1.[F2] AS INTEGER)
) AS F3
FROM mytable AS T1
Run Code Online (Sandbox Code Playgroud)
到
SELECT { fn CONCAT(CAST(T1.F1 AS INTEGER), CAST(T1.F2 AS INTEGER)) } AS F3
FROM mytable AS T1
Run Code Online (Sandbox Code Playgroud)
调用该函数的高度受限的 ODBC 转义序列版本(仅接受两个必须是字符串的参数)
只需使用标准的新查询窗口来执行您的CREATE VIEW//操作,ALTER VIEW您SELECT FROM就不会遇到此问题。
| 归档时间: |
|
| 查看次数: |
5729 次 |
| 最近记录: |