我有两张桌子:
Table 1:
Id stringval
-- ---------
1 do you work on date XXXX and date @@@@
Table 2:
Id CharString ValueString
-- ---------- -----------
1 XXXX 5-5-2013
2 @@@@ 10-5-2013
我想返回以下字符串值: 您的工作日期为5-5-2013和日期10-5-2013
可以使用Crystal Reports实现吗?
或者,可以使用Sql Server实现吗?
答案 0 :(得分:0)
这里的选项是从表中获取字符串值,并使用水晶报告的字符串函数制作字符串。
我不确定这是如何运作的但是试一试。
将您的日期XXXX和日期@@@@ 工作到一个字符串中并按空格分割,然后点击 XXXX 和 @@@ @ 现在将所需的值 5-5-2013 和 10-5-2013 输入到varaibles现在加入字符串
“你做数据工作”+ 5-5-2013 +“和日期”+ 10-5-2013
答案 1 :(得分:0)
假设XXXX
,@@@@
或CharString
Table2
列中的任何其他值只显示为占位符,也可以使用sql实现目标服务器。像这样的查询会这样做:
DECLARE @CharString VARCHAR(100)
DECLARE @ValueString VARCHAR(100)
DECLARE @SearchString VARCHAR(100)
DECLARE @ResultString VARCHAR(100)
SELECT @SearchString = stringval FROM Table1
SELECT @ResultString = stringval FROM Table1
DECLARE c CURSOR FAST_FORWARD FOR
SELECT CharString, ValueString
FROM Table2
OPEN c
FETCH NEXT FROM c INTO @CharString, @ValueString
WHILE @@FETCH_STATUS = 0
BEGIN
IF PATINDEX('%' + @CharString + '%', @SearchString) <> 0
SET @ResultString = REPLACE(@ResultString, @CharString, @ValueString)
FETCH NEXT FROM c INTO @CharString, @ValueString
END
CLOSE c
DEALLOCATE c
SELECT @ResultString