0

这可能是重复的,但从我发现的情况来看,我认为它略有不同。也不想对已标记为“已回答”的文章发表评论或添加答案

我有一个在 Crystal Report 中使用过的查询。我已经将几列连接在一起,并且很容易在 CR 中将其中的一些列加粗。

然而,为了便于重新开发 Crystal Report(代码不会发生太大变化,但设计可能会),我现在已经将几列和上面已经连接的列连接到一列中。

这会创建一个我可以处理的 blob....

CONVERT(USING UTF8) 

一切都很好(对不起,令人费解的介绍!)。

但是,我现在正在探索在 MYSQL 查询中使用 HTML 标记来使内容变粗并插入空格、中断和非中断空格。

我试过的代码如下。

CONVERT( 
CONCAT_WS(' ',
        <b>c.codetext</b>,
        m.pcdose,
        SP_GETCODECODE(m.pcunit),
        SP_GETCODECODE(m.pcrout),
        SP_GETCODECODE(m.pcfreqcode),
        m.pcinstruct)USING UTF8) AS 'Drug Info'

From P_DRUGS

我知道这行不通,因为我已经尝试过了>:)....并且我认为如果连接的值为文本,则可以成功完成,例如...

CONVERT( 
CONCAT_WS(' ',
        '<b>Paracetamol</b>',
        '500mg',
        'Orally',
        SP_GETCODECODE(m.pcrout),
        SP_GETCODECODE(m.pcfreqcode),
        m.pcinstruct)USING UTF8) AS 'Drug Info'

From Drugs

谁能告诉我如何(或是否)您可以使用 HTML 标签来执行上述操作并使某些列变为粗体等?

干杯!

4

2 回答 2

0

这不应该解决问题吗?我无法测试它,因为我没有您的表模式,但是使用嵌套的 concat 应该可以解决问题吗?

CONVERT(
CONCAT_WS(' ',
    CONCAT_WS('', '<b>', c.codetext, '</b>'),
    m.pcdose,
    SP_GETCODECODE(m.pcunit),
    SP_GETCODECODE(m.pcrout),
    SP_GETCODECODE(m.pcfreqcode),
    m.pcinstruct)USING UTF8) AS 'Drug Info'
From P_DRUGS

您可能只使用一个 concat 来执行此操作,如下例所示,但是您最终会在开始的粗体标记之后和结束的粗体标记之前出现空格。

CONVERT(
CONCAT_WS(' ',
    '<b>', c.codetext, '</b>',
    m.pcdose,
    SP_GETCODECODE(m.pcunit),
    SP_GETCODECODE(m.pcrout),
    SP_GETCODECODE(m.pcfreqcode),
    m.pcinstruct)USING UTF8) AS 'Drug Info'
From P_DRUGS 

让我知道他们中的任何一个是否有效:)

于 2017-02-28T14:53:13.240 回答
0

想通了这一点,令人尴尬的是我在发布之前错过了它。

只需在 MySQL 查询中使用 HTML 标记输入您希望它出现的代码。如下。

Select 
<b>column_name_1</b>, column_name_2
from table_name

将其粘贴到 Crystal Report 命令中并创建您的报告。然后右键单击包含 HTML 的字段,单击“格式字段”,然后在“文本解释”下下拉框并选择“HTML”

痛苦的容易!

无论如何,希望它对某人有所帮助!

于 2017-07-05T21:41:57.903 回答