This feature is in Public Preview.
This article lists new Databricks SQL features and improvements, along with known issues and FAQs.
Databricks releases updates to the Databricks SQL web application user interface on an ongoing basis, with all users getting the same updates, rolled out over a short period of time.
In addition, Databricks typically releases new SQL warehouse compute versions regularly. Two channels are always available: Preview and Current.
Releases are staged. Your Databricks account may not be updated with a new SQL warehouse version or Databricks SQL feature until a week or more after the initial release date.
Channels let you choose whether to use the Current SQL warehouse compute version or the Preview version. Preview versions let you try out functionality before it becomes the Databricks SQL standard. Take advantage of preview versions to test your production queries and dashboards against upcoming changes.
Typically, a preview version is promoted to the current channel approximately two weeks after being released to the preview channel. Some features, such as security features, maintenance updates, and bug fixes, may be released directly to the current channel. From time to time, Databricks may promote a preview version to the current channel on a different schedule. Each new version will be announced in the following sections.
To learn how to switch an existing SQL warehouse to the preview channel, see Preview Channels.
Version 2022.35: October 16 - December 12, 2022
Dynamic pruning for
Improved conflict detection in Delta with dynamic file pruning.
CONVERT TO DELTApartition detection improvements.
Table schemas now support default values for columns.
Serverless Only: You can now use 28 new built-in H3 expressions for geospatial processing. See H3 geospatial functions. These functions are available in Serverless SQL warehouses.
New aggregate function
Optimized writes for unpartitioned tables.
ALTER SHAREnow supports
The features listed in this section are independent of the SQL Warehouse compute versions described in the Channels section of the release notes.
Your query’s error messages now include links to the related documentation topic that describes the error.
You can now find a What’s New panel that highlights key enhancements. You can open and close this panel by clicking the gift icon.
Admins can now change ownership of SQL warehouses.
You can now filter across multiple visualizations in a dashboard by clicking Add > Filter and selecting the query and columns for filtering.
Visualization widget titles on dashboards are now formatted as Visualization name - Query name by default.
Added H3 Geospatial functions to the inline panel reference.
Added inline references for SQL syntax like
Sorting and reverse toggles are now available when the X-axis scale is set to automatic.
Heat maps and pivot tables are now responsive for certain edge cases.
The Categorical Y-axis tick marks are now sorted by default.
Query drafts are no longer lost after doing a browser refresh.
Databricks SQL alerts now support alerts for aggregations of query result columns such as
The default visualization title is now ‘VisualizationName - QueryName’ when creating new widgets on dashboards.
Chatworks, Mattermost, and Google Hangouts Chat are no longer alert destinations.
The y-axis now displays numbers as percentages when checking percent values.
Fixed an issue in Databricks SQL alerts where comparing against null values evaluated incorrectly.
Fixed an issue where scrollbars on pivot tables disappeared.
Fixed an issue where the schema browser couldn’t resize with overflowed tabs.
You can now create a dashboard filter that works across multiple queries at the same time. In Edit dashboard mode, choose Add, then Filter, then New Dashboard Filter.
Autocomplete now supports
CREATE MATERIALIZED VIEW.
Fixed an issue where scrolling to the end of a set of dashboard paged results would send an error.
Fixed an issue where switching from a stacked bar chart to a line chart kept the stacking property.
Fixed duplicated fetch calls.
When requesting access in Databricks SQL, the default permission is now “can run”.
Fixed an issue where sorting by
created_atusing the Queries and dashboards API did not return the correct sort order.
Fixed an issue where columns containing URLs with HTML formatting had overly wide column widths.
Fixed an issue where
WHEREkeyword wasn’t highlighted.
The row limit for downloading query results to Excel has been increased from 64,000 rows to 100,000 rows. CSV & TSV download limits remain unchanged (about 1 GB of data).
Autocomplete now supports
LISTsyntax, URLs, and credentials.
Consolidated and modernized Fix-me suggestion panels.
Fixed an issue where the warning banner in the editor overlapped full-height visualizations.
Fixed an issue where table column width was not preserved when columns of the table were moved.
Fixed an issue where the link to the dashboard in pop-up notifications was broken if a visualization was added from the SQL editor.
You can now find the query progress bar in the footer and the editing a visualization action in the kebab menu.
Autocomplete now supports Delta time travel, and provides column autocomplete when defining a foreign key.
Fixed an issue where adding multiple visualizations to a dashboard in quick succession would result in visualizations not appearing on the dashboard.
You can now remove reported error messages.
COMMENT ONinstruction is now supported in the editor.
You can now use Cmd+P or Ctr+P (for PC) as a shortcut for Top search. Use Cmd+I or Ctr+I (for PC) for Add parameters.
EXTERNALis now a reserved table property. Commands
CREATE TABLE ... TBLPROPERTIESand
ALTER TABLE ... SET TBLPROPERTIESfail if
EXTERNALis specified in the properties.
format_string(strfmt, obj, ...)and
printf(strfmt, obj, ...)no longer supports the use of
0$as the first argument. The first argument should be referenced by
1$when using an argument index to indicate the position of the argument in the argument list.
Pie chart segments now have a thin border to delineate different segments.
You can now use Cmd+I (for Mac) or Ctr+I (for PC) as a shortcut for Add parameter. Use Cmd+P or Ctr+P (for PC) as a shortcut for Global search.
A feedback button is available for good or bad query error messages.
Fix me suggestions are now available as Quick fix.
rpadfunctions now work correctly with
BINARYstring inputs. The output of
BINARYstring inputs is now a
Fixed an issue where manual alert refreshes were not working.
Rolled back changes to automatic counter sizing to fix formatting issues.
You can now request access to Databricks SQL Queries, alerts, and dashboards from owners of those assets.
You can now filter by query duration and statement type on the Query history page.
To use the query duration filter, enter an amount of time and choose a time unit. The history result returns queries that run longer than the time specified.
To use the statement type filter, choose a statement type from the dropdown. The history result returns queries containing that statement.
Fixed an issue where not all supported HTML tags were working in custom alert templates. All tags are available as documented.
Fixed an issue where Visualization notification toasts. For example, double clicking to zoom out on a visualization was previously not showing.
Fixed an issue where swapping the axes on a chart was not reflected in the chart name.
Counter widgets of the same size will have the same font sizing when multiple counter widgets are displayed on a dashboard.
Updated combination charts so that when using dual axis, only the same chart type (e.g., line, bar) can be used on the same axis. Series aliases are also applied to the axis.
Added autocomplete support for surrogate keys and
Fixed issue where text parameters did not accept
Nullas a valid value.
Fixed an issue where viewing query history from the SQL warehouses listing page did not work.
Introducing the new ‘Open Source Integrations’ card in DSE/SQL homepages that displays open source integration options such as Delta Live Tables and dbt core.
Fixed an issue where parameter dropdown menus were blocked by the visualization tab.
Introducing a new simplified UI to add parameters and filters. Choose <button>+</button> and choose to add a filter or parameter.
The parentheses of SQL tokens, such as ‘OVER()’ now get autocompleted.
Fixed an issue where viewing the dashboard in full-screen ignored the color palette.
Fixed an issue where typing quickly and then using the Run shortcut ran the previous query text, instead of the newly typed query text.
Fixed issue where using the keyboard command, ctrl+enter to run queries would submit duplicate queries.
Fixed an issue where dashboard filters were not updating when query parameters changed.
Documentation: Alerts API documentation has been released.
Visualizations: Users can now set default values for date filters. Any time the filter is refreshed on a query or dashboard, the default value is applied.
Fixed an issue where apply changes did not work if a dashboard was still reloading.
Fixed an issue where columns were too narrow when a query returns no results.
Users can receive emails when their refreshes fail. To enable such notifications, log in as a SQL Admin and navigate to the SQL Admin Console. Under Failure Emails, choose the type of object (Query, Dashboard, or Alert) for which you wish to receive failure notifications. Failure reports are sent hourly.
Introducing a new, modern color palette for visualizations and dashboards. To change a dashboard to the new color palette, go to your dashboard, click on <button>Edit</button> -> <button>Colors</button> -> <button>Import</button> and select the Databricks Color Palette. SQL Admins can also set the new color palette as the default option for a workspace by going to <button>Settings</button> -> <button>QL Admin Console</button> -> <button>Workspace Colors</button> -> <button>Import</button> and selecting the new palette.
Fixed an issue where previously selecting <button>Apply Changes</button> to apply a filter did not work if a query was already being executed.
On cloning a dashboard, there is now an option for whether or not queries should be cloned as well.
Tab content is synced across browser tabs. The state of your query will now be in sync across all browser tabs. This means that if you are working on query1 in browser tab 1 and then switch to browser tab 2, you’ll see query1 in the state you left it in while in the original browser tab.
Labels for empty strings in pie chart now reflect that the string is empty rather than the index of the value.
Custom alert email templates have been updated to disallow certain HTML tags that may pose a security risk. Disallowed HTML tags and attributes are automatically sanitized. For example, <button> is a disallowed HTML tag, so instead of rendering a button, the text “button” displays. See Alerts for the list of allowed HTML tags and attributes.
Users can now subscribe other users to alerts without needing to create an alert destination, which requires admin permissions.
Downloads: Users can now download up to approximately 1GB of results data from Databricks SQL in CSV and TSV format, up from 64,000 rows previously.
You can now edit visualizations directly on the dashboard. In edit mode, click on the kebab menu and select Edit visualization to begin editing the visualization.
When downloading results associated with a visualization leveraging aggregations, the downloaded results are also aggregated. The option to download is moving from bottom kebab to the kebab associated with the tab. The downloaded results are from the most recent execution of the query that created the visualization.
SQL editor: Results tables now display a message when data displayed by the in-browser table has been limited to 64,000 rows. TSV and CSV download will still be up to approximately 1GB of data.
Query filters have been updated to work dynamically on either client- or server-side to optimize performance. Previous query filters (now legacy) operated client-side only. Users can still use legacy filters with the
::syntax, if desired.
The updated filters are simpler: Users click a +Add Filter button and select a column from a dropdown. Previously, users had to modify the query text directly.
Relevant values are highlighted to make it easier to see which selections within a filter will return results given other filter selections.
Query history: Query details in Query History now show the Query Source, which is the origin of the executed query.
Notifications on share: Users will now be notified by email whenever a dashboard, query, or alert is shared with them.
Enhanced SQL editor experience via the new embedded editor toolkit
Live syntax error highlighting (for example, wrong keyword, table does not exist, and suggestions for fixing the error)
In context help: on hover (for example, full table name, detailed Function panel) and inline execution error messages (for example, highlight row with error post execution)
Intelligent ranking of suggestions (for example, parameter autocompletion, ranking formula, less noisy matching)
You can now upload TSV files using the
Create TableUI in addition to CSV files.
Databricks SQL now provides the option to notify users by email whenever a dashboard, query, or alert is shared with them.
Visualization tables now optionally include row numbers displayed next to results.
When you select a geographic region for the Chloropleth visualization, you now get inline hints for accepted values.
SQL endpoint name change: Databricks changed the name from SQL endpoint to SQL warehouse because it is more than just an API entry point for running SQL commands. A SQL warehouse is a computation resource for all your data warehousing needs, an integral part of the Lakehouse Platform. Compute resources are infrastructure resources that provide processing capabilities in the cloud.
For Choropleth visualizations, the Key column and Target field selections in the visualization editor have been renamed to Geographic Column and Geographic Type. This renaming for understandability does not introduce any behavior changes to new or existing Choropleths.
The limit 1000 query option has moved from a checkbox in the SQL query editor to a checkbox in the run button.
Cached queries in Query History table are now marked with a Cache tag.
Manually refreshing a dashboard uses the dashboard’s warehouse (if available) instead of each individual query’s warehouse.
Refreshing an alert always uses the alert’s warehouse, regardless of the Run as Viewer/Owner setting.
When you hover in the endpoint selector, the full endpoint name is displayed as a tooltip.
When you filter in the SQL editor schema browser, the search term is now highlighted in the search results.
The Close All dialog box in the SQL editor now displays a list of unsaved queries.
To reopen the last closed tab in the SQL editor, use this new keyboard shortcut:
<Cmd> + <Shift> + <Option> + T
You can now add data labels to combination charts.
The list of visualization aggregations operations now includes variance and standard deviation.
You can now bypass aggregations when you author visualizations. This is particularly useful when your query already includes an aggregation. For example, if your query is
SELECT AVG(price_per_sqft), isStudio, location GROUP BY location, isStudio, the chart editor previously required explicitly specifying another layer of aggregation.
When you author dashboards, you now have the ability to:
Duplicate textbox widgets
Expand the size of the edit textbox panel
The default aggregation for the error column when you author visualizations is standard deviation.
Edit actions for visualizations are only available when the dashboard is in edit mode. Edit actions are no longer available as a view mode action.
When you create a new query, it opens in a tab to the immediate right of the tab in focus rather than at the end of the list.
The open query modal shows which query is already open and provides the option to switch focus to that query tab.
The Sankey & Sunburst charts no longer treat 0 as null.
Fixed issue: When you have the focus of the SQL editor open on a specific visualization tab and share the link to another user, the user will have the same focus in the SQL editor when they click the shared link.
Microsoft Teams is now a supported alert destination.
The Date Range, Date and Time Range, and Date and Time Range (with seconds) parameters now support the option to designate the starting day of the week, with Sunday as the default.
Visualizations now support time binning directly in the UI. You can now easily switch between yearly, monthly, daily, or hourly bins of your data by changing a dropdown value rather than adding and modifying a
date_trunc()function in the query text itself.
Dashboards now have color consistency by default. If you have the same series across multiple charts, the series is always colored the same across all charts – without requiring any manual configuration.
When sharing a dashboard with a user or group, we now also provide the ability to share all upstream queries used by visualizations and parameters.
When you do not have permission to share one or more of the upstream queries, you will receive a warning message that not all queries could be shared.
The permissions granted when sharing a dashboard do not override, negate, or expand upon existing permissions on the upstream queries. For example, if a user or group has Can Run as Owner permissions on the shared dashboard but only has Run as Viewer permissions on an upstream query, the effective permissions on that upstream query will be Run as Viewer.
Your dashboard layout is now retained when exporting to PDF on demand and generating scheduled subscription emails.
Reads from data sources other than Delta Lake in multi-cluster load balanced SQL endpoints can be inconsistent.
Delta tables accessed in Databricks SQL upload their schema and table properties to the configured metastore. If you are using an external metastore, you will be able to see Delta Lake information in the metastore. Delta Lake tries to keep this information as up-to-date as possible on a best-effort basis. You can also use the
DESCRIBE <table>command to ensure that the information is updated in your metastore.
Databricks SQL does not support zone offsets like ‘GMT+8’ as session time zones. The workaround is to use a region based time zone https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) like ‘Etc/GMT+8’ instead. See SET TIME ZONE for more information about setting time zones.
Databricks SQL workloads are charged according to the Premium Jobs Compute SKU.
Like Databricks clusters, SQL endpoints are created and managed in your Google Cloud account. SQL endpoints manage SQL-optimized clusters automatically in your account and scale to match end-user demand.
I have been granted access to data using a cloud provider credential. Why can’t I access this data in Databricks SQL?
In Databricks SQL, all access to data is subject to data access control, and an administrator or data owner must first grant you the appropriate privileges.