从SQL Server格式化的简单结果

时间:2012-02-24 05:10:15

标签: sql-server ssms

我已经做了一段时间的SQL,我一直很满意使用SSMS中的Results to Grid

现在我有一系列正在运行的查询,我希望对结果进行一些非常简单的格式化。目前,Results to GridResults to Text都没有做我想做的事情。

我想做的一些事情让我更容易阅读

  1. 删除“受影响的行”(在Results to Text中找到)
  2. 的文字
  3. 在列对齐的输出格式中使列不那么宽(问题的一部分是最大字符数似乎不低于30 - 这是我的数据强制这个吗?)
  4. 如果我无法格式化输出(甚至是文本文件)我还有哪些其他选项?

    我花了一些时间查看SQL Server - > PHP - > HTML以及SQL Server - > Reporting Services - > MS报告生成器,但坦率地说,放置一些垫片并稍微提高标题似乎有些过分。

    我觉得我在这里遗漏了一些东西......我宁愿不经历所有PHP安装的麻烦,也不仅仅是为了能够查看我的数据 little 位漂亮。

2 个答案:

答案 0 :(得分:3)

  

删除显示“#revers(s)affected”的文本(在结果中找到文本)

将此SET NOCOUNT ON放在sql的顶部

  

使列中的列不那么宽,对齐的输出格式(部分   问题是最大字符数没有   似乎低于30 - 这是我的数据迫使这个?)

是这个字段的大小。如果您知道不会丢失数据,可以将其cast(field as varchar(20)强制转换为更小。

答案 1 :(得分:2)

这完全取决于您想要对格式化结果做些什么。

为了快速阅读/格式化在Management Studio中直接查看时效果不佳的结果,我使用Results to Grid,选择all with headers(通过右键单击网格的左上角),并复制/粘贴到 Excel 。从那里可以轻松地对列宽和格式进行基本修改。对我来说最大的缺点是日期永远不会开箱即用,但它始终是一个快速解决方案。

当我将查询结果粘贴到电子邮件中时,Excel也会为基本格式设置提供良好的临时停止。

在某些情况下可能有点过头了,但我怀疑使用PHP要少得多 - > HTML或Reporting Services - > MS Report Builder。