【发布时间】:2013-01-04 06:06:47
【问题描述】:
抱歉,我在乘火车回家的路上用手机写了这些问题,所以我手头没有现有的代码。我已经弄清楚了一些,但仍然需要一些帮助
1) 问题 1:每 6 位后拆分,基本上我需要在每 5 位后拆分列,以便 123456 创建列,12345 和 6,我尝试使用下面的代码没有结果。没有空格或符号,只有数字。
substring(COA.UserCode2,5,charindex('',COA.UserCode2)) as Account,
substring(COA.UserCode2,6,charindex('',COA.UserCode2)) as Project
2) 问题 2:在每个 * 之后拆分,我可以让下面的第一个工作(基金)但是如果我有一个像 1234*34*500 这样的字符串,我的成本中心和来源基本上不起作用,我需要基金的列有 1234(我已经得到了),我的成本中心说 34,我的来源说 500
substring(COA.UserCode3, 1,charindex('*',COA.UserCode3)) as Fund,substring(COA.UserCode3, 3,charindex('*',COA.UserCode3)+1) as CostCenter,substring(COA.UserCode3, 1,charindex('*',COA.UserCode3)) as Source
【问题讨论】:
-
这里有问题吗?还是您希望有人为您编写代码?
-
请在 BOL 中搜索 substring()、charindex()、patindex() 函数,您会找到所需的一切。 SO 不是代码编写服务
-
@ryadvaville,我不确定你的意思是我希望有人为我编写代码,据我了解,这是一个提问的论坛,我的问题很清楚 1) 有人可以给我看一个每隔 6 位拆分一个字符串的示例,2) 有人可以给我看一个在每个 * 之后拆分一个字符串的示例。如果这要求太多,那么我想我误解了论坛的目的是什么。我已经在许多论坛上回答了 100 多个问题,并且从未觉得有必要与任何人变得聪明,但我想你还是知道大师的。
标签: sql sql-server reporting-services