How to Properly Copy SQL Dates into Excel

📚My SQL Server writing continues at sqldba.blog, including the current take on SQL Server scripts: the DBA Scripts hub. This page stays as-is.

When copying a SQL query result directly into Excel, DATETIME columns often don’t display as expected. Excel doesn’t seem to handle milliseconds well, making the dates appear messy.


The Issue: Excel Precision Struggles

Here’s an example of data I copied over from SQL Server into an Excel sheet.

Copy SQL Data Highlight

>>

Copy SQL Date tp Excel

The DATETIME values don’t format properly, causing readability issues. It’s shows 00:00:0 instead of the dates.

Excel doesn’t recognize the format type and doesn’t know how to display the data.

Copy Data to Excel Format

The Fix: Convert to SMALLDATETIME

To ensure proper formatting, convert the DATETIME columns to SMALLDATETIME before copying the data into Excel. SMALLDATETIME removes milliseconds, making the values more Excel-friendly.

Example SQL query:

Copy SQL Data to Excel Smalldatetime

Once pasted into Excel, the dates will appear correctly using Excel’s default cell format.

Copy SQL Smalldatetime to Excel

I’d be interested to know if there’s an easier way to sort this on the Excel side. For now, the above does the trick for me.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

Looking for SQL Server?

This site started as a SQL Server blog in 2017 and the archive is still here. The new SQL Server writing, and all the scripts, moved to a site of their own.

sqldba.blogScripts, error library, wait types, SSMS
Browse by topic