【发布时间】:2021-06-25 10:21:33
【问题描述】:
使用 sql 服务器:
我有许多修剪 txt 文件的命令,例如:
Case when charindex('-', Substring([RawStreamOut], 179, 10)) > 0
then '-' + Replace(LTrim(RTRIM(Substring([RawStreamOut], 179, 9))), ',','') else
LTrim(RTRIM(Substring([RawStreamOut], 179, 10))) end as [Days_Old_16_To_20],
Case when charindex('-', Substring([RawStreamOut], 196, 10)) > 0
then '-' + Replace(LTrim(RTRIM(Substring([RawStreamOut], 196, 9))), ',','') else
LTrim(RTRIM(Substring([RawStreamOut], 196, 10))) end as [Days_Old_21_To_40]
等等……
我有很多这样的。
当前输出:
我需要能够将这些命令的结果添加到名为“total”的新列中。有没有简单的方法可以做到这一点?
【问题讨论】:
-
这是什么关系型数据库? SQL 服务器?请edit您的问题并添加适当的标签!请添加一些示例数据和一些示例输出,甚至更好的是minimal reproducible example 以及示例数据。
-
嗨,奥卡索,谢谢。我已经根据你的 cmets 更新了它
-
共享样本数据和输出而不是图像。
-
“我如何共享样本数据?” 最好作为DDL和DML语句;然后我们可以将 SQL 复制并粘贴到我们的 RDBMS 中并获取数据。如果不是格式正确表格
text. -
您不能在同一个
SELECT,不,@d_chawke 中通过别名引用列,但这不是子查询/CTE 的问题。实际上有 1,000 个(如果不是 10,000 个甚至 100,000 个或更多)示例向您展示如何使用 CTE/子查询。
标签: sql sql-server substring substr charindex