本文将向您展示将 Tableau 连接到 SQL Server 所需的步骤。此外,还将通过一个示例学习如何将 SQL 表中的数据用作 Tableau 数据源。
将 Tableau 连接到 SQL Server 所需的步骤
如果您尚未启动软件,请双击桌面将其打开。打开后,它将显示如下屏幕截图。
要连接 Tableau,首先,在“连接到服务器”部分下选择 Microsoft SQL Server 选项。

选择该选项后,将打开一个新窗口来配置服务器连接。
- 服务器:请指定 Tableau 桌面要连接的 SQL Server 实例名称。
- 输入登录服务器的信息:使用此部分确定您希望如何连接到 SQL Server。如果您使用当前的 Windows 登录凭据,请选择“使用 Windows 身份验证”选项。否则,请选择“使用特定的用户名和密码”选项,然后指定用户名和密码以访问服务器。
- 需要 SSL:连接到 SQL Server 时,请选中此选项。它可以防止注入。
- 未提交读数据:选中此选项可使用未提交读 ACID 属性。
目前,我们使用本地实例连接到 Tableau。接下来,单击“确定”按钮。有关更多数据源,请点击此处。

单击“确定”按钮后,将显示以下屏幕截图。在“数据库”部分下,有一个下拉菜单,用于选择该实例中可用的所需数据库。最好选择要从 Tableau 连接的 SQL Server 数据库。
在本例中,我们选择从 Microsoft 官方下载中心下载的 AdventureWorksDW2014 数据库。

完成操作后,将出现以下屏幕截图。在开始创建报表之前,请了解后续选项。
- AdventureWorksDW2014 是 Tableau 分配的默认数据源名称(实际上是所选的数据库名称)。请将此默认名称更改为更有意义、唯一的名称。
- 服务器:此部分将显示我们在 Tableau 中用于连接 SQL 的实例名称。
- 数据库:它显示我们选择的数据库。
- 表:此部分显示所选数据库中可用的表、视图和存储过程。搜索栏位于此部分下方,对于许多表来说非常方便。例如,如果您有 100 或 200 个表,可以使用它来搜索特定的表名。
- 在此处拖放工作表:您需要将表(或存储过程)从“表”拖到此区域。它将仅使用此区域中的表。这有点像数据集。
- 它显示了我们数据集中的数据。

连接后,我们可以通过多种方式将 SQL Server 表添加到 Tableau 的第 5 个区域:顾名思义,我们可以将表和存储过程从第 4 个区域拖到第 5 个区域,或者双击所需的表即可自动添加。
桌面允许我们使用联接添加多个表。添加表后,“预览”区域会显示两个按钮:“立即更新”和“自动更新”。
- 如果单击“立即更新”,则每次对数据集进行更改时,我们都必须单击此按钮。
- 如果单击“自动更新”按钮,对数据集所做的修改将自动反映在预览中。在本例中,我们选择此选项。

单击“自动更新”按钮后,“预览”区域将显示 DimGeography 表中的数据。

连接到 SQL Server 并将数据添加到 Tableau
上述方法并非添加数据的唯一方法。在桌面版中,您可以编写自己的查询以从连接的 SQL Server 数据库或数据源中提取数据。为此,请单击左下角的“新建自定义 SQL”按钮,如下所示。
单击“新建自定义 SQL”按钮后,将打开一个名为“编辑自定义查询”的新窗口,您可以在其中编写自己的查询。
写完自定义查询后,请单击“预览结果...”按钮以查看查询结果。
提示:请使用管理工具来构建自定义查询,然后将其粘贴到此“编辑自定义 SQL”窗口中。

我们在“连接 Tableau 到 SQL Server”示例中使用的自定义查询是:
SELECT Geo.EnglishCountryRegionName AS Country,
Geo.StateProvinceName AS State,
SUM(Fact.SalesAmount) AS Sales,
SUM(Fact.TaxAmt) AS Tax,
COUNT(Fact.OrderQuantity) AS Orders
FROM FactResellerSales AS Fact
INNER JOIN
DimSalesTerritory ON
Fact.SalesTerritoryKey = DimSalesTerritory.SalesTerritoryKey
INNER JOIN
DimGeography AS Geo ON
DimSalesTerritory.SalesTerritoryKey = Geo.SalesTerritoryKey
GROUP BY Geo.EnglishCountryRegionName, Geo.StateProvinceName
HAVING COUNT(Fact.OrderQuantity) > 60000
注意:请不要担心查询。理解编写自定义查询的过程即可。但是,如果您想了解,请阅读我们的 SQL Server 教程。
单击“预览结果...”按钮后,将打开一个名为“查看数据”的新窗口,以查看自定义查询结果。

请参阅下面的屏幕截图以了解不同区域。我们将使用另一篇文章来讨论连接部分。

在查看完数据后,单击“工作表 1”来设计报表。现在,您可以在 Tableau 桌面中看到新连接的 SQL Server 连接、查询和表。
- 数据:这将显示当前连接的数据源列表。此时我们只有一个。否则,它将显示所有可用的数据源。
- 维度:具有字符串数据的列将放置在“维度”部分下。
- 度量:具有数值数据或度量值的列将放置在“度量”部分下。
- 在这里,我们通过拖放度量和维度来设计我们的报表。
