Q
Problem solve Get help with specific problems with your technologies, process and projects.

# AVG() function on a date field

I need to know how to use a avg function with the ship_date in the sales_order table.

Perhaps the first thing to do for this problem is to ask "What is an average date?" but I'll come back to that in a moment.

In order processing, one measure of efficiency is how long it takes from the day an order is placed until the day it is shipped. The lower this measure, the more efficient your order processing operation, and the more profitable your business (you cannot, for example, bill a customer's credit card until the goods have been shipped). An average for this measure can be obtained by --

```select avg( ship_date
- order_date )
as average_ship_days
from sales_order```

In the above query, a date interval will be calculated for each row, and the AVG() function will determine the average interval. This only works, however, in databases that allow you to subtract one datetime value from another to get an interval that can be used in an aggregate function meaningfully. Oracle, for example, defaults all such date calculations to days, so the `average_ship_days` result will be a number of days.

If you aren't sure your database automatically produces results in days for date calculations, look for some sort of date conversion function. For example, in MySQL you could use the TO_DAYS() function, which converts a date into a daynumber, which is the number of days since year 0000.

```select avg( to_days(ship_date)
- to_days(order_date) )
as average_ship_days
from sales_order```

It doesn't matter what number the daynumber actually is, because when you subtract one daynumber from another, the difference is the number of days between them (assuming you don't use pre-Gregorian dates), and that difference is suitable for averaging.

However, I still haven't answered your original question. Is it possible to obtain the average of a column of dates? Perhaps. Some databases actually will let you write

```select avg( ship_date )
as average_ship_date
from sales_order```

Do not be surprised if this doesn't work. If it doesn't, you'll need to convert the dates to days inside the AVG() function. If it does work, it should give you a date that is somewhere between the earliest and latest date in the column. On the other hand, it might give you just some number which you will then have to convert to a date using a formatting function. Databases usually store dates and datetimes internally as some kind of large integer or floating point number, but they don't all use the same starting point (for example, SQL/Server uses January 1, 1900). So if the AVG() function produces a number, you'll have to convert it back to a date anyway.

This was last published in July 2002

## Content

Find more PRO+ content and other member only offers, here.

#### Have a question for an expert?

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

#### Start the conversation

Send me notifications when other members comment.

## SearchDataManagement

• ### Potent NoSQL architecture engaged for building new applications

Behind hyperbolic terms like 'digital transformation' are innovative systems of engagement. DataStax CEO Billy Bosworth joins ...

• ### Finance data governance program gets new start, broader focus

Businesses constantly need to evolve their programs for governing data. Nationwide's finance data governance team shares how it ...

• ### Pepperdata calls on Dr. Elephant for big data application profiling

Application profiling software from Pepperdata is built on LinkedIn's Dr. Elephant open source entry. A primary goal is to get ...

• ### Deloitte report reveals the power of unstructured data analytics

The analysis of unstructured data and other so-called dark data types can deliver significant business value, according to a new ...

• ### Ease of use is top priority in selecting self-service analytics tools

A lot of factors go into a strong, modern BI tool, but users say that ease of use trumps all other considerations when picking ...

• ### Three predictive modeling flaws that cripple data science projects

Data science can be incredibly valuable if done right, but just as damaging if done wrong. Here, a data science expert discusses ...

## SearchSAP

SAP Vora has been updated to include features that make it easier to deploy and use to get insights from Hadoop big data; SAP IBP...

• ### Chatbots provide faster self-service on SAP systems

The SAP SuccessFactors partnership with collaboration software vendor Slack is just one of many efforts to make little robotic ...

• ### SAP tops list of ERP vendors, but market is more evenly divided

Panorama Consulting says SAP continues as market leader among the top four ERP vendors. But the market has evened, and Microsoft ...

## SearchSQLServer

• ### Redgate tools help bring database DevOps to Visual Studio 2017

So far, data has been left out of the discussion. But database DevOps can grow if tools like Redgate's package for Visual Studio ...

• ### Conquer real-time operational analytics in SQL Server 2016

Analytics helps improve business operations, and SQL Server 2016 users can master it -- in real time, using operational data in a...

• ### SQL Server machine learning goes full throttle on operational data

Artificial intelligence is a hot topic in IT, and Microsoft has made strides to synchronize SQL Server with machine learning ...

## TheServerSide

• ### Amazon S3 outage a Fukushima moment for cloud computing

The Amazon S3 outage has turned into the Fukushima moment of cloud computing, as users re-evaluate the cloud's long-term ...

• ### GPU computing key to machine learning and big data performance

While the CPU remains central to data processing, massive gains in the area of AI analytics and dig data performance are being ...

• ### Why scaling Agile development calls for DevOps toolchain integration

Learn how Tasktop is battling the cost of scaling Agile development and the DevOps toolchain by integrating top tools.

## SearchDataCenter

• ### IBM's cloud dreams soar on the wings of AI, open source

Hoping to play catch-up with its web services archrivals, IBM has rolled out a raft of products and services fueled by AI and ...

• ### Fortify IoT infrastructure now, even for simple deployments

The IoT deployments in the enterprise today may not tax the current infrastructure, but it's not too soon to prep for the demands...

• ### Data center storage architecture moves toward software-defined memory

New IT developments converge storage and memory into a hybrid approach. Consequently, the idea of software-defined memory starts ...

## SearchContentManagement

• ### Microsoft Teams joins growing business chat software market

The general release of Microsoft's latest product puts Slack square in its scope, with hopes of taking a chunk from the business ...

Headless CMS can be a difficult pivot for dyed-in-the-wool legacy shops, but remixing content in this new model with RESTful APIs...

• ### Workplace collaboration tools aren't a nice-to-have anymore

Workplace collaboration software isn't just about convenient employee chat options. It's making employees and external partners ...

## SearchFinancialApplications

• ### Report rates e-sourcing, spend analysis and contract management tools

Gartner Magic Quadrant finds plenty of room for growth in market for cloud-based strategic sourcing application suites that can ...

• ### Benefits administration systems that use analytics liked by employers

HR tech systems are increasingly using analytics in benefits administration, including using claims data; meanwhile, APIs are ...

• ### Degreed integrates and organizes content from online learning software

Atlassian and Intel use cloud-based Degreed to integrate e-books, articles, videos and other content and recommend training for ...

Close