首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以显示空白而不是重复的行单元格信息?

是否可以显示空白而不是重复的行单元格信息?
EN

Stack Overflow用户
提问于 2019-07-02 00:28:13
回答 1查看 96关注 0票数 3

我有一个按特定ID分组的报告,这意味着某些信息必须重复。在这种情况下,每个参考数字都有多个与之相关联的专利记录。因此,如果有4个专利,它将正确返回4行,但引用ID、提交日期和标题将在所有4行中重复,而其他列显示唯一信息。

有没有可能在第2-4行有这个回车空格,以便我只看到一次“公共”信息?

这就是我目前所看到的。

代码语言:javascript
复制
Reference-1    July 1, 2019    Title here    Acme, Inc.    ABCD-1234  Patent 1
Reference-1    July 1, 2019    Title here    Acme, Inc.    ABCD-1234  Patent 2
Reference-1    July 1, 2019    Title here    Acme, Inc.    ABCD-1234  Patent 3
Reference-1    July 1, 2019    Title here    Acme, Inc.    ABCD-1234  Patent 4

有没有可能让它返回这个?我想要返回相同的行,只是没有重复的值。

代码语言:javascript
复制
 Reference-1    July 1, 2019    Title here    Acme, Inc.    ABCD-1234  Patent 1
                                                                       Patent 2
                                                                       Patent 3
                                                                       Patent 4

下面是我的代码的当前版本:

代码语言:javascript
复制
SELECT
i.reference_id AS "Reference Number",
i.submission_dt AS "Submission Date",
i.title AS "Title",
o.name AS "Sponsor",
o.grant_number AS "Grant Number",
p.patent_id AS "IP Reference"


FROM 
invention i
LEFT OUTER JOIN
organization2invention o2i ON o2i.invention_id = i.invention_id
LEFT OUTER JOIN
organization o ON o2i.organization_id = o.organization_id
LEFT OUTER JOIN
patent2invention pt2i ON pt2i.invention_id = i.invention_id
LEFT OUTER JOIN
patent p ON pt2i.patent_id = p.patent_id


WHERE
o.grant_number = "ABCD-1234"

group by p.patent_id
order by i.reference_id

ETA:在此示例中,标题永远不会在专利3和专利4之间更改。除了专利列之外,所有列都是链接的,并且将保持不变。

但是,也可能存在另一组引用-2的记录,我希望所有字段在第一次出现引用-2时显示,而不是在其他时间显示。

代码语言:javascript
复制
Reference-1    July 1, 2019    Title here    Acme, Inc.    ABCD-1234  Patent 1
                                                                      Patent 2
                                                                      Patent 3
                                                                      Patent 4     

Reference-2    July 1, 2019    Title here    Acme, Inc.   ABCD-1234   Patent 5
                                                                      Patent 6
                                                                      Patent 7
                                                                      Patent 8

版本5.7.22

ETA2:我正在从一个基于web/云的数据库中提取数据,这个数据库的UI非常差劲。他们内置了一个页面,这个页面有一个MySQL代码输入框和一个按钮,上面写着"Run Query“,因为他们的界面没有以我们需要的方式提供数据。我只有只读访问权限,他们的显示器不能识别某些东西(比如\n),而且它有一些内置的格式化标签(类似于my_object_id AS "My Object|display_name:MyObject")。

当我点击"Run Query“时,网页的底部会返回显示。

此功能旨在用作“自定义报告”,因此显示很重要。除了直接的MySQL代码之外,他们没有给我一种方法来做这件事。

EN

回答 1

Stack Overflow用户

发布于 2019-07-02 01:26:15

这个答案不会输出完美的布局,因为布局不是用来处理

的。As stated by Strawberry -“考虑改为处理应用程序代码中的数据显示问题”

..。

操作状态:

mysql我被限制在一个文本输入框中,只允许

代码对数据进行只读访问。

因此,MySQL视图是不可能的,并且可以通过显示输出处理器(PHP等)来整理结果。是一个未知变量。

OP还声明:

除了专利列之外的所有列都是链接的,并且将保持不变

所以;

尝试扭转这个问题;您需要一个完整的结果,其中包含专利数据的多次迭代。您可以在更改列patent_id列上执行此using GROUP_CONCAT操作。您还必须选择引用列的不同值,但用于获得所需结果的SQL select编辑相当少:

代码语言:javascript
复制
SELECT
DISTINCT i.reference_id AS "Reference Number",
i.submission_dt AS "Submission Date",
i.title AS "Title",
o.name AS "Sponsor",
o.grant_number AS "Grant Number",
GROUP_CONCAT(p.patent_id SEPARATOR '\\n') AS "IP Reference"

FROM 
invention i
LEFT OUTER JOIN
organization2invention o2i ON o2i.invention_id = i.invention_id
LEFT OUTER JOIN
organization o ON o2i.organization_id = o.organization_id
LEFT OUTER JOIN
patent2invention pt2i ON pt2i.invention_id = i.invention_id
LEFT OUTER JOIN
patent p ON pt2i.patent_id = p.patent_id

WHERE
o.grant_number = "ABCD-1234"

GROUP BY i.reference_id,
ORDER BY i.reference_id

这将产生一组带有"Reference 1“的行,例如,具有与该引用相关的所有不同p.patent_id值的GROUP CONCAT,在这种情况下由换行符分隔。

\n是标准的换行符(在MySQL中作为\\n进行转义)。您可以根据需要调整此SEPERATOR

您没有向我们提供有关显示机制的任何线索,但是如果您要输出到一个HTML表中,您可能可以插入任何您喜欢的内容,甚至可以将HTML语言插入到SEPERATOR子句中。

代码语言:javascript
复制
  GROUP_CONCAT(p.patent_id SEPARATOR 
      '</td></tr><tr><td colspan="5">&nbsp;</td><td>') AS "IP Reference"

您还可以使用DISTINCT子句从专利列表中删除重复项。

Reference

输出:

参考- 1 2019年7月1日标题Acme,Inc. ABCD-1234专利1专利2专利3专利4参考-2 7月1日,2019年标题Acme,Inc. ABCD-1234专利5专利6专利7专利8

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56839163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档