2015-11-03 51 views
1

我有一个包含多个表的Access数据库文件。 为了创建一个带有正则表达式匹配的计算字段,我创建了一个带有数据提取的Tableau工作簿。计算字段在数据源预览中变为无效

我要做的就是努力顶级域匹配了[网站定位]它包含有效的URL,并将其保存在该领域TopLvlDomain:

REGEXP_EXTRACT([Web Location],'(?:\.([a-z]{2,6})(?:\/|$))') 

这工作得很好,给我我想要的东西:

enter image description here

如果我去的不过的Tableau预览数据源选项卡,它告诉我,该场计算是无效的:

enter image description here

这是为什么,我该如何解决它?

它重要的原因是我有另一张有国家代码的表格,我想加入它以获取完整的国家名称。我知道它并不完全可靠(认为com,org等域名),但是为了准确而准确。

回答

3

您的计算是正确的,并且这可以在Excel(或任何其他支持Tableau REGEX的数据源)中工作。但是,Access不支持这些Tableau REGEX功能。

See docs

REGEXP_EXTRACT(字符串,图案)返回 正则表达式模式匹配字符串的部分。此功能可用于 文本文件,Hadoop Hive,Google BigQuery,PostgreSQL,Tableau数据 Extract,Microsoft Excel,Salesforce和Oracle数据源。

的一个选择,这似乎是你做了什么,是创建Access数据库的提取物,然后用它来运行的正则表达式。您可以刷新解压缩以使其与Access数据库中的数据保持同步。

+0

好吧,似乎我保存了提取物,但随后在实时连接的工作簿中工作。这很奇怪,因为它表示在右上角的单选按钮上提取。哪种改变我的问题,我可能不得不改变这个问题。 – Alexander

+0

我现在所做的是在提取中创建RegEx计算,然后打开原始数据库并将国家表与计算字段混合。似乎过于复杂,但如果这是要走的路... – Alexander