Reputation: 793
I'm trying to connect to google BigQuery table with nested fields. I'm using Tableau 10.1
I get the following error when I pull in the nested fields.
The Google BigQuery service was unable to compile the query. Unrecognized name: field.column_1
However, with Tableau 9.3, there's no such error. Can someone please suggest why this is happening on the newer Tableau version? and how to resolve it?
Upvotes: 1
Views: 1046
Reputation: 762
Issue: Tableau is unable to recognize the nested column name(parent.child1.
Solution: I solved it by creating a view in which I provided an alias name for each nested column(something like parent.child1 as parent_child1
and parent.child2 as parent_child2
).
Then referenced the View in Tableau.
Upvotes: 0
Reputation: 793
Changing the tableau datasource settings to use google-bql (legacy sql) resolved the issue. There are 2 ways to get this done.
Method 1: Edit the tableau file in a text editor and change the SQL connection dialect from google-sql to google-bql.
connection-dialect='google-bql'
This has to be done in every tableau workbook.
Method 2: Create a Tableau Datasource Customization (Example: BigQueryCustomization.tdc) with the following contents.
<connection-customization class='bigquery' enabled='true' version='10.0' >
<vendor name='bigquery' />
<driver name='bigquery' />
<customizations>
<customization name='connection-dialect' value='google-bql' />
</customizations>
</connection-customization>
Place it inside the ..\Documents\My Tableau Repository\Datasources\ folder. This will enforce tableau to use legacy SQL to connect to bigquery. It’s not the exact tableau version number but the sql-connection-dialect setting that does the trick.
More info on the following link - https://onlinehelp.tableau.com/current/pro/desktop/en-us/examples_googlebigquery.html
Upvotes: 2