RECURSION

In programming, recursion is the act of using a function to call itself. Outputs from a previous iteration are used as inputs to the next iteration. For example, consider the task of generating a sequence of integer values from one to ten, inclusive. Given the starting value of one, the next value can be defined as the current value plus one. To determine the third value in the sequence, the output of the previous iteration (i.e., 2) is used, resulting in 3 (i.e., 2 + 1). Here, the challenge doesn’t concern our ability to perform basic addition, but to understand how something so simple as adding one to an integer value can be expounded upon.

Structured query language (SQL) offers recursion through the use of common table expressions (CTE). If you’re unfamiliar with common table expressions, then I highly recommend reading my page containing a high-level overview on the topic, with supporting examples before continuing further.

Let’s return to the task of generating a sequence of integer values from one to ten, inclusive. Using SQL, we’ll make use of a recursive common table expression. Please note, with Oracle database a column alias list is required when using recursive CTEs. See line one in the example code below where the column alias listing is provided in parentheses. A recursive CTE contains two parts: an anchor query and a recursive query.

WITH integer_sequence (integer_value) AS (
    SELECT
    	1 AS integer_value 
    FROM
    	dual
    UNION ALL
    SELECT
    	integer_value + 1
    FROM
    	integer_sequence
    WHERE
    	integer_sequence.integer_value < 10
)
SELECT
	integer_sequence.integer_value
FROM
	integer_sequence;

In the anchor query, the starting value is generated. In this case, the value is one. Don’t let the reference to “dual” in the anchor query distract you. This is simply a dummy table offered by Oracle database that can expand and retract as needed at the time of executing a query. Here the dummy table is used to maintain a column named integer_value containing a single value, one. In the recursive query, the common table expression (i.e., integer_sequence) is referenced. During the first iteration, a second row of data containing our second integer value, two, is generated by referencing the current integer value, one, and adding one to it. At this point, integer_sequence contains two values, one and two. Each iteration after results in the subsequent integer value, defined as the integer value generated in the previous iteration plus one, being generated. A vital aspect of the recursive query is the stopping condition. Typically, this stopping condition is defined in the WHERE clause of the recursive query. In the absence of logic stating when to stop generating integer values, this process would continue forever. Luckily, Oracle database will throw an error reminding you to incorporate a stopping condition in your query if you happen to forget. For the current task, we’d like our query to terminate or stop generating integer values when integer_value for the current iteration is greater than or equal to 10. During the last iteration, integer_value will equal nine, resulting in the final value of ten being generated. Pay close attention to the comparison operator and operands used in your stopping conditions. It’s the easiest part to get wrong.

At first, it can be easy to dismiss the usefulness of recursion. I find this to be particularly true in the absence of presenting real-world problems where recursion is incorporated into the solution, so let’s explore a few problems extending beyond generating a sequence of integers.

Before reading further, consider reviewing the Example Data section below to familiarize yourself with the data being used throughout the examples on this page. If you are already familiar with the data, then skip to the Identifying Gaps in Dates section.

Example Data
The schemas, corresponding tables, and data used in the example problems can be found at livesql.oracle.com. To more easily follow the examples covered on this page, consider first reading the table descriptions below and reviewing each table’s contents. To review the data maintained in each table, click on the icon next to the table name. To hide the data, click the icon again.

oe.orders
For each order placed by a customer, various attributes are captured. There is one row per order.
order_idorder_dateorder_modecustomer_idorder_statusorder_totalsales_rep_idpromotion_id
245816-AUG-07 03.34.12.234359 PMdirect101078279.6153
239719-NOV-07 02.41.54.696211 PMdirect102142283.2154
245402-OCT-07 05.49.34.678340 PMdirect10316653.4154
235414-JUL-08 06.18.23.234567 PMdirect104046257155
235808-JAN-08 05.03.12.654278 PMdirect10527826155
238114-MAY-08 08.59.08.843679 PMdirect106323034.6156
244031-AUG-07 09.53.06.008765 PMdirect107370576.9156
235708-JAN-06 08.19.44.123456 PMdirect108559872.4158
239410-FEB-08 09.22.35.564789 PMdirect109521863158
243502-SEP-07 11.22.53.134567 PMdirect144662303159
245520-SEP-07 11.34.11.456789 AMdirect145714087.5160
237916-MAY-07 02.22.24.234567 AMdirect146817848.2161
239602-FEB-06 01.34.56.345678 AMdirect147834930161
240629-JUN-07 04.41.20.098765 AMdirect14882854.2161
243413-SEP-07 05.49.30.647893 AMdirect1498268651.8161
243602-SEP-07 06.18.04.378034 AMdirect11686394.8161
244627-JUL-07 07.03.08.302945 AMdirect1178103679.3161
244727-JUL-08 08.59.10.223344 AMdirect101833893.6161
243214-SEP-07 09.53.40.223345 AMdirect1021010523163
243313-SEP-07 10.19.00.654279 AMdirect1031078163
235526-JAN-06 09.22.51.962632 AMonline104894513.5
235626-JAN-08 09.22.41.934562 AMonline105529473.8
235908-JAN-06 09.34.13.112233 PMonline10695543.1
236014-NOV-07 12.22.31.223344 PMonline1074990.4
236113-NOV-07 01.34.21.986210 PMonline1088120131.3
236213-NOV-07 02.41.10.619477 PMonline109492829.4
236323-OCT-07 05.49.56.346122 PMonline144010082.3
236428-AUG-07 06.18.45.942399 PMonline14549500
236528-AUG-07 07.03.34.003399 PMonline146927455.3
236628-AUG-07 08.59.23.144778 PMonline147537319.4
236727-JUN-08 09.53.32.335522 PMonline14810144054.8
236826-JUN-08 10.19.43.190089 PMonline1491060065
236926-JUN-07 11.22.54.009932 PMonline116011097.4
237027-JUN-08 12.22.11.647398 AMonline1174126
237116-MAY-07 01.34.56.113356 AMonline118679405.6
237227-FEB-07 12.22.33.356789 AMonline119916447.2
237327-FEB-08 01.34.51.220065 AMonline1204416
237427-FEB-08 02.41.45.109654 AMonline12104797
237526-FEB-07 03.49.50.459233 AMonline1222103834.4
237607-JUN-07 06.18.08.883310 AMonline123611006.2
237707-JUN-07 07.03.01.001100 AMonline141538017.8
237824-MAY-07 08.59.10.010101 AMonline142525691.3
238016-MAY-07 09.53.02.909090 AMonline143327132.6
238214-MAY-08 10.19.03.828321 AMonline144871173
238312-MAY-08 11.22.30.545103 AMonline145836374.7
238412-MAY-08 12.22.34.525972 PMonline146329249.1
238508-DEC-07 11.34.11.331392 AMonline1474295892
238606-DEC-07 12.22.34.225609 PMonline1481021116.9
238711-MAR-07 03.34.56.536966 PMonline149552758.9
238804-JUN-07 04.41.12.554435 PMonline1504282694.3
238904-JUN-08 05.49.43.546954 PMonline151417620
239018-NOV-07 04.18.50.546851 PMonline15297616.8
239127-FEB-06 05.03.03.828330 PMdirect153248070.6156
239221-JUL-07 08.59.57.571057 PMdirect154926632161
239310-FEB-08 07.53.19.528202 PMdirect155423431.9161
239502-FEB-06 08.19.11.227550 PMdirect156368501163
239819-NOV-07 09.22.53.224175 PMdirect15797110.3163
239919-NOV-07 10.22.38.340990 PMdirect158025270.3161
240010-JUL-07 01.34.29.559387 AMdirect159269286.4161
240110-JUL-07 02.22.53.554822 AMdirect1603969.2163
240202-JUL-07 03.34.44.665170 AMdirect1618600154
240301-JUL-07 04.49.13.615512 PMdirect1620220154
240401-JUL-07 04.49.13.664085 PMdirect1636510158
240501-JUL-07 04.49.13.678123 PMdirect16451233159
240729-JUN-07 07.03.21.526005 AMdirect16592519155
240829-JUN-07 08.59.31.333617 AMdirect1661309158
240929-JUN-07 09.53.41.984501 AMdirect167248154
241024-MAY-08 10.19.51.985501 AMdirect168645175156
241124-MAY-07 11.22.10.548639 AMdirect169815760.5156
241229-MAR-06 10.22.09.509801 AMdirect170966816158
241329-MAR-08 01.34.04.525934 PMdirect101548552161
241429-MAR-07 02.22.40.536996 PMdirect102810794.6153
241529-MAR-06 01.34.50.545196 PMdirect1036310161
241629-MAR-07 04.41.20.945676 PMdirect1046384160
241720-MAR-07 05.49.10.974352 PMdirect10551926.6163
241820-MAR-04 04.18.21.862632 PMdirect10645546.6163
241920-MAR-07 07.03.32.764632 PMdirect107331574160
242013-MAR-07 08.59.43.666320 PMdirect108229750160
242112-MAR-07 09.53.54.562432 PMdirect109172836
242216-DEC-07 08.19.55.462332 PMdirect144211188.5153
242321-NOV-07 10.22.33.362632 AMdirect145310367.7160
242421-NOV-07 10.22.33.263332 AMdirect146413824153
242516-NOV-06 11.34.22.162552 PMdirect14751500.8163
242617-NOV-06 12.22.11.262552 AMdirect14867200
242710-NOV-07 01.34.22.362124 AMdirect14979055163
242810-NOV-07 02.41.34.463567 AMdirect116814685.8
242910-NOV-07 03.49.25.526321 AMdirect117950125154
243002-OCT-07 06.18.36.663332 AMdirect101829669.9159
243114-SEP-06 07.03.04.763452 AMdirect10215610.6163
243701-SEP-06 08.59.15.826132 AMdirect103413550163
243801-SEP-07 09.53.26.934626 AMdirect10405451154
243931-AUG-07 10.19.37.811132 AMdirect105122150.1159
244101-AUG-08 11.22.48.734526 AMdirect10652075.2160
244227-JUL-06 12.22.59.662632 PMdirect107952471.9154
244327-JUL-06 01.34.16.562632 PMdirect10803646154
244427-JUL-07 02.22.27.462632 PMdirect109177727.2155
244527-JUL-06 03.34.38.362632 PMdirect14485537.8158
244818-JUN-07 04.41.49.262632 PMdirect14551388158
244913-JUN-07 05.49.07.162632 PMdirect146686155
245011-APR-07 06.18.10.362632 PMdirect14731636159
245117-DEC-07 05.03.52.562632 PMdirect148710474.6154
245206-OCT-07 08.59.43.462632 PMdirect149512589159
245304-OCT-07 09.53.34.362632 PMdirect1160129153
245607-NOV-06 07.53.25.989889 PMdirect11703878.4163
245731-OCT-07 11.22.16.162632 PMdirect118521586.2159

Identifying Gaps in Dates
Imagine there exists a popular 24/7 online cupcake delivery service, allowing users to purchase cupcakes online and have them delivered to their door. The service is so popular an order has been placed every day since opening day. Stacy, the owner of the service, developed and configured the front-end aspect of the ordering system users interact with and also the back-end database table (i.e., oe.orders) for which orders are written to as they are placed. Unfortunately, something has gone wrong with the database causing several days’ worth of orders to disappear. Although the data is recoverable, in an effort to assess impact and identify root cause, she wishes to determine the dates for which orders disappeared. She completes a quick check to verify order data corresponding to the first day her service was available, and the current day is present in the database table but is unsure on how to quickly and programmatically identify the missing dates in between the two dates. Unfortunately, she is also without a calendar table that would allow her to quickly generate a list of all date values between the two dates. How can Stacy identify the missing order date values?

Stacy’s problem ultimately requires her to identify gaps in order dates. Given that an order has been placed every day since the launch of her online service and she’s verified the existence of order data for launch day and the current day, any date value missing from the database table between those two dates is of interest. To identify those missing dates, she first needs to develop a means to generate a list of those date values between launch day and the current day. She can use a recursive CTE to generate this list. Let’s explore this option, starting with the means to capture the date values associated with launch day and the current day given the data and this specific scenario.

In the query below and subsequent output, the date_range CTE returns the date values associated with launch day and the most recent day by computing the minimum and maximum order date value. These two values are vital to the task because they will serve as the lower and upper bound for the date range in the search for missing dates.

WITH date_range (start_date, end_date) AS (
    SELECT
		TRUNC(MIN(oe.orders.order_date)) AS start_date,
		TRUNC(MAX(oe.orders.order_date)) AS end_date
    FROM
		oe.orders
)
SELECT
	date_range.start_date,
	date_range.end_date
FROM
	date_range;
start_dateend_date
2004-03-202008-08-01

Now that identifying the lower and upper bound for our date range has been solved for, the query needs to be augmented to use these two values as the start and end dates for the list of date values. A recursive CTE can be used to perform this task. See the augmented code below with an explanation following.

WITH date_range (start_date, end_date) AS (
    SELECT
		TRUNC(MIN(oe.orders.order_date)) AS start_date,
		TRUNC(MAX(oe.orders.order_date)) AS end_date
    FROM
		oe.orders
),
applicable_date (date_value, end_date) AS (
    SELECT
		date_range.start_date AS date_value,
		date_range.end_date
    FROM
		date_range
    UNION ALL
    SELECT
		applicable_date.date_value + 1,
		applicable_date.end_date
    FROM
		applicable_date
    WHERE
		applicable_date.date_value < applicable_date.end_date
)
SELECT
	applicable_date.date_value,
    applicable_date.end_date
FROM
	applicable_date;

In the recursive CTE, applicable_date, the anchor query returns the start_date and end_date values referenced in and returned by date_range. Again, these values correspond to the launch date of the online service and the most recent day given the data. The recursive query generates a new row of data during each iteration. In each of these new rows, the date_value reflected is equal to the current date or most recent iteration’s date_value plus one day while the end_date value remains constant. For clarity, observe the output generated by applicable_date’s anchor query, first two iterations of the recursive query, and the final iteration of the recursive query following the code below. The generation of new rows ceases because the stopping condition is met. Remember, the goal of the recursive query is to generate a list of date values starting with the date associated with the launch day of Stacy’s online service and ending with the current day.

Anchor Query Output

date_valueend_date
2004-03-202008-08-01

Recursive Query Iteration 1

date_valueend_date
2004-03-202008-08-01
2004-03-212008-08-01

Recursive Query Iteration 2

date_valueend_date
2004-03-202008-08-01
2004-03-212008-08-01
2004-03-222008-08-01

Recursive Query Iteration 1596

date_valueend_date
2004-03-202008-08-01
2004-03-212008-08-01
2004-03-222008-08-01
2004-03-232008-08-01
2004-03-242008-08-01
2004-03-252008-08-01
2004-03-262008-08-01
2004-03-272008-08-01
2004-03-282008-08-01
2004-03-292008-08-01
2004-03-302008-08-01
2004-03-312008-08-01
2004-04-012008-08-01
2004-04-022008-08-01
2004-04-032008-08-01
2004-04-042008-08-01
2004-04-052008-08-01
2004-04-062008-08-01
2004-04-072008-08-01
2004-04-082008-08-01
2004-04-092008-08-01
2004-04-102008-08-01
2004-04-112008-08-01
2004-04-122008-08-01
2004-04-132008-08-01
2004-04-142008-08-01
2004-04-152008-08-01
2004-04-162008-08-01
2004-04-172008-08-01
2004-04-182008-08-01
2004-04-192008-08-01
2004-04-202008-08-01
2004-04-212008-08-01
2004-04-222008-08-01
2004-04-232008-08-01
2004-04-242008-08-01
2004-04-252008-08-01
2004-04-262008-08-01
2004-04-272008-08-01
2004-04-282008-08-01
2004-04-292008-08-01
2004-04-302008-08-01
2004-05-012008-08-01
2004-05-022008-08-01
2004-05-032008-08-01
2004-05-042008-08-01
2004-05-052008-08-01
2004-05-062008-08-01
2004-05-072008-08-01
2004-05-082008-08-01
2004-05-092008-08-01
2004-05-102008-08-01
2004-05-112008-08-01
2004-05-122008-08-01
2004-05-132008-08-01
2004-05-142008-08-01
2004-05-152008-08-01
2004-05-162008-08-01
2004-05-172008-08-01
2004-05-182008-08-01
2004-05-192008-08-01
2004-05-202008-08-01
2004-05-212008-08-01
2004-05-222008-08-01
2004-05-232008-08-01
2004-05-242008-08-01
2004-05-252008-08-01
2004-05-262008-08-01
2004-05-272008-08-01
2004-05-282008-08-01
2004-05-292008-08-01
2004-05-302008-08-01
2004-05-312008-08-01
2004-06-012008-08-01
2004-06-022008-08-01
2004-06-032008-08-01
2004-06-042008-08-01
2004-06-052008-08-01
2004-06-062008-08-01
2004-06-072008-08-01
2004-06-082008-08-01
2004-06-092008-08-01
2004-06-102008-08-01
2004-06-112008-08-01
2004-06-122008-08-01
2004-06-132008-08-01
2004-06-142008-08-01
2004-06-152008-08-01
2004-06-162008-08-01
2004-06-172008-08-01
2004-06-182008-08-01
2004-06-192008-08-01
2004-06-202008-08-01
2004-06-212008-08-01
2004-06-222008-08-01
2004-06-232008-08-01
2004-06-242008-08-01
2004-06-252008-08-01
2004-06-262008-08-01
2004-06-272008-08-01
2004-06-282008-08-01
2004-06-292008-08-01
2004-06-302008-08-01
2004-07-012008-08-01
2004-07-022008-08-01
2004-07-032008-08-01
2004-07-042008-08-01
2004-07-052008-08-01
2004-07-062008-08-01
2004-07-072008-08-01
2004-07-082008-08-01
2004-07-092008-08-01
2004-07-102008-08-01
2004-07-112008-08-01
2004-07-122008-08-01
2004-07-132008-08-01
2004-07-142008-08-01
2004-07-152008-08-01
2004-07-162008-08-01
2004-07-172008-08-01
2004-07-182008-08-01
2004-07-192008-08-01
2004-07-202008-08-01
2004-07-212008-08-01
2004-07-222008-08-01
2004-07-232008-08-01
2004-07-242008-08-01
2004-07-252008-08-01
2004-07-262008-08-01
2004-07-272008-08-01
2004-07-282008-08-01
2004-07-292008-08-01
2004-07-302008-08-01
2004-07-312008-08-01
2004-08-012008-08-01
2004-08-022008-08-01
2004-08-032008-08-01
2004-08-042008-08-01
2004-08-052008-08-01
2004-08-062008-08-01
2004-08-072008-08-01
2004-08-082008-08-01
2004-08-092008-08-01
2004-08-102008-08-01
2004-08-112008-08-01
2004-08-122008-08-01
2004-08-132008-08-01
2004-08-142008-08-01
2004-08-152008-08-01
2004-08-162008-08-01
2004-08-172008-08-01
2004-08-182008-08-01
2004-08-192008-08-01
2004-08-202008-08-01
2004-08-212008-08-01
2004-08-222008-08-01
2004-08-232008-08-01
2004-08-242008-08-01
2004-08-252008-08-01
2004-08-262008-08-01
2004-08-272008-08-01
2004-08-282008-08-01
2004-08-292008-08-01
2004-08-302008-08-01
2004-08-312008-08-01
2004-09-012008-08-01
2004-09-022008-08-01
2004-09-032008-08-01
2004-09-042008-08-01
2004-09-052008-08-01
2004-09-062008-08-01
2004-09-072008-08-01
2004-09-082008-08-01
2004-09-092008-08-01
2004-09-102008-08-01
2004-09-112008-08-01
2004-09-122008-08-01
2004-09-132008-08-01
2004-09-142008-08-01
2004-09-152008-08-01
2004-09-162008-08-01
2004-09-172008-08-01
2004-09-182008-08-01
2004-09-192008-08-01
2004-09-202008-08-01
2004-09-212008-08-01
2004-09-222008-08-01
2004-09-232008-08-01
2004-09-242008-08-01
2004-09-252008-08-01
2004-09-262008-08-01
2004-09-272008-08-01
2004-09-282008-08-01
2004-09-292008-08-01
2004-09-302008-08-01
2004-10-012008-08-01
2004-10-022008-08-01
2004-10-032008-08-01
2004-10-042008-08-01
2004-10-052008-08-01
2004-10-062008-08-01
2004-10-072008-08-01
2004-10-082008-08-01
2004-10-092008-08-01
2004-10-102008-08-01
2004-10-112008-08-01
2004-10-122008-08-01
2004-10-132008-08-01
2004-10-142008-08-01
2004-10-152008-08-01
2004-10-162008-08-01
2004-10-172008-08-01
2004-10-182008-08-01
2004-10-192008-08-01
2004-10-202008-08-01
2004-10-212008-08-01
2004-10-222008-08-01
2004-10-232008-08-01
2004-10-242008-08-01
2004-10-252008-08-01
2004-10-262008-08-01
2004-10-272008-08-01
2004-10-282008-08-01
2004-10-292008-08-01
2004-10-302008-08-01
2004-10-312008-08-01
2004-11-012008-08-01
2004-11-022008-08-01
2004-11-032008-08-01
2004-11-042008-08-01
2004-11-052008-08-01
2004-11-062008-08-01
2004-11-072008-08-01
2004-11-082008-08-01
2004-11-092008-08-01
2004-11-102008-08-01
2004-11-112008-08-01
2004-11-122008-08-01
2004-11-132008-08-01
2004-11-142008-08-01
2004-11-152008-08-01
2004-11-162008-08-01
2004-11-172008-08-01
2004-11-182008-08-01
2004-11-192008-08-01
2004-11-202008-08-01
2004-11-212008-08-01
2004-11-222008-08-01
2004-11-232008-08-01
2004-11-242008-08-01
2004-11-252008-08-01
2004-11-262008-08-01
2004-11-272008-08-01
2004-11-282008-08-01
2004-11-292008-08-01
2004-11-302008-08-01
2004-12-012008-08-01
2004-12-022008-08-01
2004-12-032008-08-01
2004-12-042008-08-01
2004-12-052008-08-01
2004-12-062008-08-01
2004-12-072008-08-01
2004-12-082008-08-01
2004-12-092008-08-01
2004-12-102008-08-01
2004-12-112008-08-01
2004-12-122008-08-01
2004-12-132008-08-01
2004-12-142008-08-01
2004-12-152008-08-01
2004-12-162008-08-01
2004-12-172008-08-01
2004-12-182008-08-01
2004-12-192008-08-01
2004-12-202008-08-01
2004-12-212008-08-01
2004-12-222008-08-01
2004-12-232008-08-01
2004-12-242008-08-01
2004-12-252008-08-01
2004-12-262008-08-01
2004-12-272008-08-01
2004-12-282008-08-01
2004-12-292008-08-01
2004-12-302008-08-01
2004-12-312008-08-01
2005-01-012008-08-01
2005-01-022008-08-01
2005-01-032008-08-01
2005-01-042008-08-01
2005-01-052008-08-01
2005-01-062008-08-01
2005-01-072008-08-01
2005-01-082008-08-01
2005-01-092008-08-01
2005-01-102008-08-01
2005-01-112008-08-01
2005-01-122008-08-01
2005-01-132008-08-01
2005-01-142008-08-01
2005-01-152008-08-01
2005-01-162008-08-01
2005-01-172008-08-01
2005-01-182008-08-01
2005-01-192008-08-01
2005-01-202008-08-01
2005-01-212008-08-01
2005-01-222008-08-01
2005-01-232008-08-01
2005-01-242008-08-01
2005-01-252008-08-01
2005-01-262008-08-01
2005-01-272008-08-01
2005-01-282008-08-01
2005-01-292008-08-01
2005-01-302008-08-01
2005-01-312008-08-01
2005-02-012008-08-01
2005-02-022008-08-01
2005-02-032008-08-01
2005-02-042008-08-01
2005-02-052008-08-01
2005-02-062008-08-01
2005-02-072008-08-01
2005-02-082008-08-01
2005-02-092008-08-01
2005-02-102008-08-01
2005-02-112008-08-01
2005-02-122008-08-01
2005-02-132008-08-01
2005-02-142008-08-01
2005-02-152008-08-01
2005-02-162008-08-01
2005-02-172008-08-01
2005-02-182008-08-01
2005-02-192008-08-01
2005-02-202008-08-01
2005-02-212008-08-01
2005-02-222008-08-01
2005-02-232008-08-01
2005-02-242008-08-01
2005-02-252008-08-01
2005-02-262008-08-01
2005-02-272008-08-01
2005-02-282008-08-01
2005-03-012008-08-01
2005-03-022008-08-01
2005-03-032008-08-01
2005-03-042008-08-01
2005-03-052008-08-01
2005-03-062008-08-01
2005-03-072008-08-01
2005-03-082008-08-01
2005-03-092008-08-01
2005-03-102008-08-01
2005-03-112008-08-01
2005-03-122008-08-01
2005-03-132008-08-01
2005-03-142008-08-01
2005-03-152008-08-01
2005-03-162008-08-01
2005-03-172008-08-01
2005-03-182008-08-01
2005-03-192008-08-01
2005-03-202008-08-01
2005-03-212008-08-01
2005-03-222008-08-01
2005-03-232008-08-01
2005-03-242008-08-01
2005-03-252008-08-01
2005-03-262008-08-01
2005-03-272008-08-01
2005-03-282008-08-01
2005-03-292008-08-01
2005-03-302008-08-01
2005-03-312008-08-01
2005-04-012008-08-01
2005-04-022008-08-01
2005-04-032008-08-01
2005-04-042008-08-01
2005-04-052008-08-01
2005-04-062008-08-01
2005-04-072008-08-01
2005-04-082008-08-01
2005-04-092008-08-01
2005-04-102008-08-01
2005-04-112008-08-01
2005-04-122008-08-01
2005-04-132008-08-01
2005-04-142008-08-01
2005-04-152008-08-01
2005-04-162008-08-01
2005-04-172008-08-01
2005-04-182008-08-01
2005-04-192008-08-01
2005-04-202008-08-01
2005-04-212008-08-01
2005-04-222008-08-01
2005-04-232008-08-01
2005-04-242008-08-01
2005-04-252008-08-01
2005-04-262008-08-01
2005-04-272008-08-01
2005-04-282008-08-01
2005-04-292008-08-01
2005-04-302008-08-01
2005-05-012008-08-01
2005-05-022008-08-01
2005-05-032008-08-01
2005-05-042008-08-01
2005-05-052008-08-01
2005-05-062008-08-01
2005-05-072008-08-01
2005-05-082008-08-01
2005-05-092008-08-01
2005-05-102008-08-01
2005-05-112008-08-01
2005-05-122008-08-01
2005-05-132008-08-01
2005-05-142008-08-01
2005-05-152008-08-01
2005-05-162008-08-01
2005-05-172008-08-01
2005-05-182008-08-01
2005-05-192008-08-01
2005-05-202008-08-01
2005-05-212008-08-01
2005-05-222008-08-01
2005-05-232008-08-01
2005-05-242008-08-01
2005-05-252008-08-01
2005-05-262008-08-01
2005-05-272008-08-01
2005-05-282008-08-01
2005-05-292008-08-01
2005-05-302008-08-01
2005-05-312008-08-01
2005-06-012008-08-01
2005-06-022008-08-01
2005-06-032008-08-01
2005-06-042008-08-01
2005-06-052008-08-01
2005-06-062008-08-01
2005-06-072008-08-01
2005-06-082008-08-01
2005-06-092008-08-01
2005-06-102008-08-01
2005-06-112008-08-01
2005-06-122008-08-01
2005-06-132008-08-01
2005-06-142008-08-01
2005-06-152008-08-01
2005-06-162008-08-01
2005-06-172008-08-01
2005-06-182008-08-01
2005-06-192008-08-01
2005-06-202008-08-01
2005-06-212008-08-01
2005-06-222008-08-01
2005-06-232008-08-01
2005-06-242008-08-01
2005-06-252008-08-01
2005-06-262008-08-01
2005-06-272008-08-01
2005-06-282008-08-01
2005-06-292008-08-01
2005-06-302008-08-01
2005-07-012008-08-01
2005-07-022008-08-01
2005-07-032008-08-01
2005-07-042008-08-01
2005-07-052008-08-01
2005-07-062008-08-01
2005-07-072008-08-01
2005-07-082008-08-01
2005-07-092008-08-01
2005-07-102008-08-01
2005-07-112008-08-01
2005-07-122008-08-01
2005-07-132008-08-01
2005-07-142008-08-01
2005-07-152008-08-01
2005-07-162008-08-01
2005-07-172008-08-01
2005-07-182008-08-01
2005-07-192008-08-01
2005-07-202008-08-01
2005-07-212008-08-01
2005-07-222008-08-01
2005-07-232008-08-01
2005-07-242008-08-01
2005-07-252008-08-01
2005-07-262008-08-01
2005-07-272008-08-01
2005-07-282008-08-01
2005-07-292008-08-01
2005-07-302008-08-01
2005-07-312008-08-01
2005-08-012008-08-01
2005-08-022008-08-01
2005-08-032008-08-01
2005-08-042008-08-01
2005-08-052008-08-01
2005-08-062008-08-01
2005-08-072008-08-01
2005-08-082008-08-01
2005-08-092008-08-01
2005-08-102008-08-01
2005-08-112008-08-01
2005-08-122008-08-01
2005-08-132008-08-01
2005-08-142008-08-01
2005-08-152008-08-01
2005-08-162008-08-01
2005-08-172008-08-01
2005-08-182008-08-01
2005-08-192008-08-01
2005-08-202008-08-01
2005-08-212008-08-01
2005-08-222008-08-01
2005-08-232008-08-01
2005-08-242008-08-01
2005-08-252008-08-01
2005-08-262008-08-01
2005-08-272008-08-01
2005-08-282008-08-01
2005-08-292008-08-01
2005-08-302008-08-01
2005-08-312008-08-01
2005-09-012008-08-01
2005-09-022008-08-01
2005-09-032008-08-01
2005-09-042008-08-01
2005-09-052008-08-01
2005-09-062008-08-01
2005-09-072008-08-01
2005-09-082008-08-01
2005-09-092008-08-01
2005-09-102008-08-01
2005-09-112008-08-01
2005-09-122008-08-01
2005-09-132008-08-01
2005-09-142008-08-01
2005-09-152008-08-01
2005-09-162008-08-01
2005-09-172008-08-01
2005-09-182008-08-01
2005-09-192008-08-01
2005-09-202008-08-01
2005-09-212008-08-01
2005-09-222008-08-01
2005-09-232008-08-01
2005-09-242008-08-01
2005-09-252008-08-01
2005-09-262008-08-01
2005-09-272008-08-01
2005-09-282008-08-01
2005-09-292008-08-01
2005-09-302008-08-01
2005-10-012008-08-01
2005-10-022008-08-01
2005-10-032008-08-01
2005-10-042008-08-01
2005-10-052008-08-01
2005-10-062008-08-01
2005-10-072008-08-01
2005-10-082008-08-01
2005-10-092008-08-01
2005-10-102008-08-01
2005-10-112008-08-01
2005-10-122008-08-01
2005-10-132008-08-01
2005-10-142008-08-01
2005-10-152008-08-01
2005-10-162008-08-01
2005-10-172008-08-01
2005-10-182008-08-01
2005-10-192008-08-01
2005-10-202008-08-01
2005-10-212008-08-01
2005-10-222008-08-01
2005-10-232008-08-01
2005-10-242008-08-01
2005-10-252008-08-01
2005-10-262008-08-01
2005-10-272008-08-01
2005-10-282008-08-01
2005-10-292008-08-01
2005-10-302008-08-01
2005-10-312008-08-01
2005-11-012008-08-01
2005-11-022008-08-01
2005-11-032008-08-01
2005-11-042008-08-01
2005-11-052008-08-01
2005-11-062008-08-01
2005-11-072008-08-01
2005-11-082008-08-01
2005-11-092008-08-01
2005-11-102008-08-01
2005-11-112008-08-01
2005-11-122008-08-01
2005-11-132008-08-01
2005-11-142008-08-01
2005-11-152008-08-01
2005-11-162008-08-01
2005-11-172008-08-01
2005-11-182008-08-01
2005-11-192008-08-01
2005-11-202008-08-01
2005-11-212008-08-01
2005-11-222008-08-01
2005-11-232008-08-01
2005-11-242008-08-01
2005-11-252008-08-01
2005-11-262008-08-01
2005-11-272008-08-01
2005-11-282008-08-01
2005-11-292008-08-01
2005-11-302008-08-01
2005-12-012008-08-01
2005-12-022008-08-01
2005-12-032008-08-01
2005-12-042008-08-01
2005-12-052008-08-01
2005-12-062008-08-01
2005-12-072008-08-01
2005-12-082008-08-01
2005-12-092008-08-01
2005-12-102008-08-01
2005-12-112008-08-01
2005-12-122008-08-01
2005-12-132008-08-01
2005-12-142008-08-01
2005-12-152008-08-01
2005-12-162008-08-01
2005-12-172008-08-01
2005-12-182008-08-01
2005-12-192008-08-01
2005-12-202008-08-01
2005-12-212008-08-01
2005-12-222008-08-01
2005-12-232008-08-01
2005-12-242008-08-01
2005-12-252008-08-01
2005-12-262008-08-01
2005-12-272008-08-01
2005-12-282008-08-01
2005-12-292008-08-01
2005-12-302008-08-01
2005-12-312008-08-01
2006-01-012008-08-01
2006-01-022008-08-01
2006-01-032008-08-01
2006-01-042008-08-01
2006-01-052008-08-01
2006-01-062008-08-01
2006-01-072008-08-01
2006-01-082008-08-01
2006-01-092008-08-01
2006-01-102008-08-01
2006-01-112008-08-01
2006-01-122008-08-01
2006-01-132008-08-01
2006-01-142008-08-01
2006-01-152008-08-01
2006-01-162008-08-01
2006-01-172008-08-01
2006-01-182008-08-01
2006-01-192008-08-01
2006-01-202008-08-01
2006-01-212008-08-01
2006-01-222008-08-01
2006-01-232008-08-01
2006-01-242008-08-01
2006-01-252008-08-01
2006-01-262008-08-01
2006-01-272008-08-01
2006-01-282008-08-01
2006-01-292008-08-01
2006-01-302008-08-01
2006-01-312008-08-01
2006-02-012008-08-01
2006-02-022008-08-01
2006-02-032008-08-01
2006-02-042008-08-01
2006-02-052008-08-01
2006-02-062008-08-01
2006-02-072008-08-01
2006-02-082008-08-01
2006-02-092008-08-01
2006-02-102008-08-01
2006-02-112008-08-01
2006-02-122008-08-01
2006-02-132008-08-01
2006-02-142008-08-01
2006-02-152008-08-01
2006-02-162008-08-01
2006-02-172008-08-01
2006-02-182008-08-01
2006-02-192008-08-01
2006-02-202008-08-01
2006-02-212008-08-01
2006-02-222008-08-01
2006-02-232008-08-01
2006-02-242008-08-01
2006-02-252008-08-01
2006-02-262008-08-01
2006-02-272008-08-01
2006-02-282008-08-01
2006-03-012008-08-01
2006-03-022008-08-01
2006-03-032008-08-01
2006-03-042008-08-01
2006-03-052008-08-01
2006-03-062008-08-01
2006-03-072008-08-01
2006-03-082008-08-01
2006-03-092008-08-01
2006-03-102008-08-01
2006-03-112008-08-01
2006-03-122008-08-01
2006-03-132008-08-01
2006-03-142008-08-01
2006-03-152008-08-01
2006-03-162008-08-01
2006-03-172008-08-01
2006-03-182008-08-01
2006-03-192008-08-01
2006-03-202008-08-01
2006-03-212008-08-01
2006-03-222008-08-01
2006-03-232008-08-01
2006-03-242008-08-01
2006-03-252008-08-01
2006-03-262008-08-01
2006-03-272008-08-01
2006-03-282008-08-01
2006-03-292008-08-01
2006-03-302008-08-01
2006-03-312008-08-01
2006-04-012008-08-01
2006-04-022008-08-01
2006-04-032008-08-01
2006-04-042008-08-01
2006-04-052008-08-01
2006-04-062008-08-01
2006-04-072008-08-01
2006-04-082008-08-01
2006-04-092008-08-01
2006-04-102008-08-01
2006-04-112008-08-01
2006-04-122008-08-01
2006-04-132008-08-01
2006-04-142008-08-01
2006-04-152008-08-01
2006-04-162008-08-01
2006-04-172008-08-01
2006-04-182008-08-01
2006-04-192008-08-01
2006-04-202008-08-01
2006-04-212008-08-01
2006-04-222008-08-01
2006-04-232008-08-01
2006-04-242008-08-01
2006-04-252008-08-01
2006-04-262008-08-01
2006-04-272008-08-01
2006-04-282008-08-01
2006-04-292008-08-01
2006-04-302008-08-01
2006-05-012008-08-01
2006-05-022008-08-01
2006-05-032008-08-01
2006-05-042008-08-01
2006-05-052008-08-01
2006-05-062008-08-01
2006-05-072008-08-01
2006-05-082008-08-01
2006-05-092008-08-01
2006-05-102008-08-01
2006-05-112008-08-01
2006-05-122008-08-01
2006-05-132008-08-01
2006-05-142008-08-01
2006-05-152008-08-01
2006-05-162008-08-01
2006-05-172008-08-01
2006-05-182008-08-01
2006-05-192008-08-01
2006-05-202008-08-01
2006-05-212008-08-01
2006-05-222008-08-01
2006-05-232008-08-01
2006-05-242008-08-01
2006-05-252008-08-01
2006-05-262008-08-01
2006-05-272008-08-01
2006-05-282008-08-01
2006-05-292008-08-01
2006-05-302008-08-01
2006-05-312008-08-01
2006-06-012008-08-01
2006-06-022008-08-01
2006-06-032008-08-01
2006-06-042008-08-01
2006-06-052008-08-01
2006-06-062008-08-01
2006-06-072008-08-01
2006-06-082008-08-01
2006-06-092008-08-01
2006-06-102008-08-01
2006-06-112008-08-01
2006-06-122008-08-01
2006-06-132008-08-01
2006-06-142008-08-01
2006-06-152008-08-01
2006-06-162008-08-01
2006-06-172008-08-01
2006-06-182008-08-01
2006-06-192008-08-01
2006-06-202008-08-01
2006-06-212008-08-01
2006-06-222008-08-01
2006-06-232008-08-01
2006-06-242008-08-01
2006-06-252008-08-01
2006-06-262008-08-01
2006-06-272008-08-01
2006-06-282008-08-01
2006-06-292008-08-01
2006-06-302008-08-01
2006-07-012008-08-01
2006-07-022008-08-01
2006-07-032008-08-01
2006-07-042008-08-01
2006-07-052008-08-01
2006-07-062008-08-01
2006-07-072008-08-01
2006-07-082008-08-01
2006-07-092008-08-01
2006-07-102008-08-01
2006-07-112008-08-01
2006-07-122008-08-01
2006-07-132008-08-01
2006-07-142008-08-01
2006-07-152008-08-01
2006-07-162008-08-01
2006-07-172008-08-01
2006-07-182008-08-01
2006-07-192008-08-01
2006-07-202008-08-01
2006-07-212008-08-01
2006-07-222008-08-01
2006-07-232008-08-01
2006-07-242008-08-01
2006-07-252008-08-01
2006-07-262008-08-01
2006-07-272008-08-01
2006-07-282008-08-01
2006-07-292008-08-01
2006-07-302008-08-01
2006-07-312008-08-01
2006-08-012008-08-01
2006-08-022008-08-01
2006-08-032008-08-01
2006-08-042008-08-01
2006-08-052008-08-01
2006-08-062008-08-01
2006-08-072008-08-01
2006-08-082008-08-01
2006-08-092008-08-01
2006-08-102008-08-01
2006-08-112008-08-01
2006-08-122008-08-01
2006-08-132008-08-01
2006-08-142008-08-01
2006-08-152008-08-01
2006-08-162008-08-01
2006-08-172008-08-01
2006-08-182008-08-01
2006-08-192008-08-01
2006-08-202008-08-01
2006-08-212008-08-01
2006-08-222008-08-01
2006-08-232008-08-01
2006-08-242008-08-01
2006-08-252008-08-01
2006-08-262008-08-01
2006-08-272008-08-01
2006-08-282008-08-01
2006-08-292008-08-01
2006-08-302008-08-01
2006-08-312008-08-01
2006-09-012008-08-01
2006-09-022008-08-01
2006-09-032008-08-01
2006-09-042008-08-01
2006-09-052008-08-01
2006-09-062008-08-01
2006-09-072008-08-01
2006-09-082008-08-01
2006-09-092008-08-01
2006-09-102008-08-01
2006-09-112008-08-01
2006-09-122008-08-01
2006-09-132008-08-01
2006-09-142008-08-01
2006-09-152008-08-01
2006-09-162008-08-01
2006-09-172008-08-01
2006-09-182008-08-01
2006-09-192008-08-01
2006-09-202008-08-01
2006-09-212008-08-01
2006-09-222008-08-01
2006-09-232008-08-01
2006-09-242008-08-01
2006-09-252008-08-01
2006-09-262008-08-01
2006-09-272008-08-01
2006-09-282008-08-01
2006-09-292008-08-01
2006-09-302008-08-01
2006-10-012008-08-01
2006-10-022008-08-01
2006-10-032008-08-01
2006-10-042008-08-01
2006-10-052008-08-01
2006-10-062008-08-01
2006-10-072008-08-01
2006-10-082008-08-01
2006-10-092008-08-01
2006-10-102008-08-01
2006-10-112008-08-01
2006-10-122008-08-01
2006-10-132008-08-01
2006-10-142008-08-01
2006-10-152008-08-01
2006-10-162008-08-01
2006-10-172008-08-01
2006-10-182008-08-01
2006-10-192008-08-01
2006-10-202008-08-01
2006-10-212008-08-01
2006-10-222008-08-01
2006-10-232008-08-01
2006-10-242008-08-01
2006-10-252008-08-01
2006-10-262008-08-01
2006-10-272008-08-01
2006-10-282008-08-01
2006-10-292008-08-01
2006-10-302008-08-01
2006-10-312008-08-01
2006-11-012008-08-01
2006-11-022008-08-01
2006-11-032008-08-01
2006-11-042008-08-01
2006-11-052008-08-01
2006-11-062008-08-01
2006-11-072008-08-01
2006-11-082008-08-01
2006-11-092008-08-01
2006-11-102008-08-01
2006-11-112008-08-01
2006-11-122008-08-01
2006-11-132008-08-01
2006-11-142008-08-01
2006-11-152008-08-01
2006-11-162008-08-01
2006-11-172008-08-01
2006-11-182008-08-01
2006-11-192008-08-01
2006-11-202008-08-01
2006-11-212008-08-01
2006-11-222008-08-01
2006-11-232008-08-01
2006-11-242008-08-01
2006-11-252008-08-01
2006-11-262008-08-01
2006-11-272008-08-01
2006-11-282008-08-01
2006-11-292008-08-01
2006-11-302008-08-01
2006-12-012008-08-01
2006-12-022008-08-01
2006-12-032008-08-01
2006-12-042008-08-01
2006-12-052008-08-01
2006-12-062008-08-01
2006-12-072008-08-01
2006-12-082008-08-01
2006-12-092008-08-01
2006-12-102008-08-01
2006-12-112008-08-01
2006-12-122008-08-01
2006-12-132008-08-01
2006-12-142008-08-01
2006-12-152008-08-01
2006-12-162008-08-01
2006-12-172008-08-01
2006-12-182008-08-01
2006-12-192008-08-01
2006-12-202008-08-01
2006-12-212008-08-01
2006-12-222008-08-01
2006-12-232008-08-01
2006-12-242008-08-01
2006-12-252008-08-01
2006-12-262008-08-01
2006-12-272008-08-01
2006-12-282008-08-01
2006-12-292008-08-01
2006-12-302008-08-01
2006-12-312008-08-01
2007-01-012008-08-01
2007-01-022008-08-01
2007-01-032008-08-01
2007-01-042008-08-01
2007-01-052008-08-01
2007-01-062008-08-01
2007-01-072008-08-01
2007-01-082008-08-01
2007-01-092008-08-01
2007-01-102008-08-01
2007-01-112008-08-01
2007-01-122008-08-01
2007-01-132008-08-01
2007-01-142008-08-01
2007-01-152008-08-01
2007-01-162008-08-01
2007-01-172008-08-01
2007-01-182008-08-01
2007-01-192008-08-01
2007-01-202008-08-01
2007-01-212008-08-01
2007-01-222008-08-01
2007-01-232008-08-01
2007-01-242008-08-01
2007-01-252008-08-01
2007-01-262008-08-01
2007-01-272008-08-01
2007-01-282008-08-01
2007-01-292008-08-01
2007-01-302008-08-01
2007-01-312008-08-01
2007-02-012008-08-01
2007-02-022008-08-01
2007-02-032008-08-01
2007-02-042008-08-01
2007-02-052008-08-01
2007-02-062008-08-01
2007-02-072008-08-01
2007-02-082008-08-01
2007-02-092008-08-01
2007-02-102008-08-01
2007-02-112008-08-01
2007-02-122008-08-01
2007-02-132008-08-01
2007-02-142008-08-01
2007-02-152008-08-01
2007-02-162008-08-01
2007-02-172008-08-01
2007-02-182008-08-01
2007-02-192008-08-01
2007-02-202008-08-01
2007-02-212008-08-01
2007-02-222008-08-01
2007-02-232008-08-01
2007-02-242008-08-01
2007-02-252008-08-01
2007-02-262008-08-01
2007-02-272008-08-01
2007-02-282008-08-01
2007-03-012008-08-01
2007-03-022008-08-01
2007-03-032008-08-01
2007-03-042008-08-01
2007-03-052008-08-01
2007-03-062008-08-01
2007-03-072008-08-01
2007-03-082008-08-01
2007-03-092008-08-01
2007-03-102008-08-01
2007-03-112008-08-01
2007-03-122008-08-01
2007-03-132008-08-01
2007-03-142008-08-01
2007-03-152008-08-01
2007-03-162008-08-01
2007-03-172008-08-01
2007-03-182008-08-01
2007-03-192008-08-01
2007-03-202008-08-01
2007-03-212008-08-01
2007-03-222008-08-01
2007-03-232008-08-01
2007-03-242008-08-01
2007-03-252008-08-01
2007-03-262008-08-01
2007-03-272008-08-01
2007-03-282008-08-01
2007-03-292008-08-01
2007-03-302008-08-01
2007-03-312008-08-01
2007-04-012008-08-01
2007-04-022008-08-01
2007-04-032008-08-01
2007-04-042008-08-01
2007-04-052008-08-01
2007-04-062008-08-01
2007-04-072008-08-01
2007-04-082008-08-01
2007-04-092008-08-01
2007-04-102008-08-01
2007-04-112008-08-01
2007-04-122008-08-01
2007-04-132008-08-01
2007-04-142008-08-01
2007-04-152008-08-01
2007-04-162008-08-01
2007-04-172008-08-01
2007-04-182008-08-01
2007-04-192008-08-01
2007-04-202008-08-01
2007-04-212008-08-01
2007-04-222008-08-01
2007-04-232008-08-01
2007-04-242008-08-01
2007-04-252008-08-01
2007-04-262008-08-01
2007-04-272008-08-01
2007-04-282008-08-01
2007-04-292008-08-01
2007-04-302008-08-01
2007-05-012008-08-01
2007-05-022008-08-01
2007-05-032008-08-01
2007-05-042008-08-01
2007-05-052008-08-01
2007-05-062008-08-01
2007-05-072008-08-01
2007-05-082008-08-01
2007-05-092008-08-01
2007-05-102008-08-01
2007-05-112008-08-01
2007-05-122008-08-01
2007-05-132008-08-01
2007-05-142008-08-01
2007-05-152008-08-01
2007-05-162008-08-01
2007-05-172008-08-01
2007-05-182008-08-01
2007-05-192008-08-01
2007-05-202008-08-01
2007-05-212008-08-01
2007-05-222008-08-01
2007-05-232008-08-01
2007-05-242008-08-01
2007-05-252008-08-01
2007-05-262008-08-01
2007-05-272008-08-01
2007-05-282008-08-01
2007-05-292008-08-01
2007-05-302008-08-01
2007-05-312008-08-01
2007-06-012008-08-01
2007-06-022008-08-01
2007-06-032008-08-01
2007-06-042008-08-01
2007-06-052008-08-01
2007-06-062008-08-01
2007-06-072008-08-01
2007-06-082008-08-01
2007-06-092008-08-01
2007-06-102008-08-01
2007-06-112008-08-01
2007-06-122008-08-01
2007-06-132008-08-01
2007-06-142008-08-01
2007-06-152008-08-01
2007-06-162008-08-01
2007-06-172008-08-01
2007-06-182008-08-01
2007-06-192008-08-01
2007-06-202008-08-01
2007-06-212008-08-01
2007-06-222008-08-01
2007-06-232008-08-01
2007-06-242008-08-01
2007-06-252008-08-01
2007-06-262008-08-01
2007-06-272008-08-01
2007-06-282008-08-01
2007-06-292008-08-01
2007-06-302008-08-01
2007-07-012008-08-01
2007-07-022008-08-01
2007-07-032008-08-01
2007-07-042008-08-01
2007-07-052008-08-01
2007-07-062008-08-01
2007-07-072008-08-01
2007-07-082008-08-01
2007-07-092008-08-01
2007-07-102008-08-01
2007-07-112008-08-01
2007-07-122008-08-01
2007-07-132008-08-01
2007-07-142008-08-01
2007-07-152008-08-01
2007-07-162008-08-01
2007-07-172008-08-01
2007-07-182008-08-01
2007-07-192008-08-01
2007-07-202008-08-01
2007-07-212008-08-01
2007-07-222008-08-01
2007-07-232008-08-01
2007-07-242008-08-01
2007-07-252008-08-01
2007-07-262008-08-01
2007-07-272008-08-01
2007-07-282008-08-01
2007-07-292008-08-01
2007-07-302008-08-01
2007-07-312008-08-01
2007-08-012008-08-01
2007-08-022008-08-01
2007-08-032008-08-01
2007-08-042008-08-01
2007-08-052008-08-01
2007-08-062008-08-01
2007-08-072008-08-01
2007-08-082008-08-01
2007-08-092008-08-01
2007-08-102008-08-01
2007-08-112008-08-01
2007-08-122008-08-01
2007-08-132008-08-01
2007-08-142008-08-01
2007-08-152008-08-01
2007-08-162008-08-01
2007-08-172008-08-01
2007-08-182008-08-01
2007-08-192008-08-01
2007-08-202008-08-01
2007-08-212008-08-01
2007-08-222008-08-01
2007-08-232008-08-01
2007-08-242008-08-01
2007-08-252008-08-01
2007-08-262008-08-01
2007-08-272008-08-01
2007-08-282008-08-01
2007-08-292008-08-01
2007-08-302008-08-01
2007-08-312008-08-01
2007-09-012008-08-01
2007-09-022008-08-01
2007-09-032008-08-01
2007-09-042008-08-01
2007-09-052008-08-01
2007-09-062008-08-01
2007-09-072008-08-01
2007-09-082008-08-01
2007-09-092008-08-01
2007-09-102008-08-01
2007-09-112008-08-01
2007-09-122008-08-01
2007-09-132008-08-01
2007-09-142008-08-01
2007-09-152008-08-01
2007-09-162008-08-01
2007-09-172008-08-01
2007-09-182008-08-01
2007-09-192008-08-01
2007-09-202008-08-01
2007-09-212008-08-01
2007-09-222008-08-01
2007-09-232008-08-01
2007-09-242008-08-01
2007-09-252008-08-01
2007-09-262008-08-01
2007-09-272008-08-01
2007-09-282008-08-01
2007-09-292008-08-01
2007-09-302008-08-01
2007-10-012008-08-01
2007-10-022008-08-01
2007-10-032008-08-01
2007-10-042008-08-01
2007-10-052008-08-01
2007-10-062008-08-01
2007-10-072008-08-01
2007-10-082008-08-01
2007-10-092008-08-01
2007-10-102008-08-01
2007-10-112008-08-01
2007-10-122008-08-01
2007-10-132008-08-01
2007-10-142008-08-01
2007-10-152008-08-01
2007-10-162008-08-01
2007-10-172008-08-01
2007-10-182008-08-01
2007-10-192008-08-01
2007-10-202008-08-01
2007-10-212008-08-01
2007-10-222008-08-01
2007-10-232008-08-01
2007-10-242008-08-01
2007-10-252008-08-01
2007-10-262008-08-01
2007-10-272008-08-01
2007-10-282008-08-01
2007-10-292008-08-01
2007-10-302008-08-01
2007-10-312008-08-01
2007-11-012008-08-01
2007-11-022008-08-01
2007-11-032008-08-01
2007-11-042008-08-01
2007-11-052008-08-01
2007-11-062008-08-01
2007-11-072008-08-01
2007-11-082008-08-01
2007-11-092008-08-01
2007-11-102008-08-01
2007-11-112008-08-01
2007-11-122008-08-01
2007-11-132008-08-01
2007-11-142008-08-01
2007-11-152008-08-01
2007-11-162008-08-01
2007-11-172008-08-01
2007-11-182008-08-01
2007-11-192008-08-01
2007-11-202008-08-01
2007-11-212008-08-01
2007-11-222008-08-01
2007-11-232008-08-01
2007-11-242008-08-01
2007-11-252008-08-01
2007-11-262008-08-01
2007-11-272008-08-01
2007-11-282008-08-01
2007-11-292008-08-01
2007-11-302008-08-01
2007-12-012008-08-01
2007-12-022008-08-01
2007-12-032008-08-01
2007-12-042008-08-01
2007-12-052008-08-01
2007-12-062008-08-01
2007-12-072008-08-01
2007-12-082008-08-01
2007-12-092008-08-01
2007-12-102008-08-01
2007-12-112008-08-01
2007-12-122008-08-01
2007-12-132008-08-01
2007-12-142008-08-01
2007-12-152008-08-01
2007-12-162008-08-01
2007-12-172008-08-01
2007-12-182008-08-01
2007-12-192008-08-01
2007-12-202008-08-01
2007-12-212008-08-01
2007-12-222008-08-01
2007-12-232008-08-01
2007-12-242008-08-01
2007-12-252008-08-01
2007-12-262008-08-01
2007-12-272008-08-01
2007-12-282008-08-01
2007-12-292008-08-01
2007-12-302008-08-01
2007-12-312008-08-01
2008-01-012008-08-01
2008-01-022008-08-01
2008-01-032008-08-01
2008-01-042008-08-01
2008-01-052008-08-01
2008-01-062008-08-01
2008-01-072008-08-01
2008-01-082008-08-01
2008-01-092008-08-01
2008-01-102008-08-01
2008-01-112008-08-01
2008-01-122008-08-01
2008-01-132008-08-01
2008-01-142008-08-01
2008-01-152008-08-01
2008-01-162008-08-01
2008-01-172008-08-01
2008-01-182008-08-01
2008-01-192008-08-01
2008-01-202008-08-01
2008-01-212008-08-01
2008-01-222008-08-01
2008-01-232008-08-01
2008-01-242008-08-01
2008-01-252008-08-01
2008-01-262008-08-01
2008-01-272008-08-01
2008-01-282008-08-01
2008-01-292008-08-01
2008-01-302008-08-01
2008-01-312008-08-01
2008-02-012008-08-01
2008-02-022008-08-01
2008-02-032008-08-01
2008-02-042008-08-01
2008-02-052008-08-01
2008-02-062008-08-01
2008-02-072008-08-01
2008-02-082008-08-01
2008-02-092008-08-01
2008-02-102008-08-01
2008-02-112008-08-01
2008-02-122008-08-01
2008-02-132008-08-01
2008-02-142008-08-01
2008-02-152008-08-01
2008-02-162008-08-01
2008-02-172008-08-01
2008-02-182008-08-01
2008-02-192008-08-01
2008-02-202008-08-01
2008-02-212008-08-01
2008-02-222008-08-01
2008-02-232008-08-01
2008-02-242008-08-01
2008-02-252008-08-01
2008-02-262008-08-01
2008-02-272008-08-01
2008-02-282008-08-01
2008-02-292008-08-01
2008-03-012008-08-01
2008-03-022008-08-01
2008-03-032008-08-01
2008-03-042008-08-01
2008-03-052008-08-01
2008-03-062008-08-01
2008-03-072008-08-01
2008-03-082008-08-01
2008-03-092008-08-01
2008-03-102008-08-01
2008-03-112008-08-01
2008-03-122008-08-01
2008-03-132008-08-01
2008-03-142008-08-01
2008-03-152008-08-01
2008-03-162008-08-01
2008-03-172008-08-01
2008-03-182008-08-01
2008-03-192008-08-01
2008-03-202008-08-01
2008-03-212008-08-01
2008-03-222008-08-01
2008-03-232008-08-01
2008-03-242008-08-01
2008-03-252008-08-01
2008-03-262008-08-01
2008-03-272008-08-01
2008-03-282008-08-01
2008-03-292008-08-01
2008-03-302008-08-01
2008-03-312008-08-01
2008-04-012008-08-01
2008-04-022008-08-01
2008-04-032008-08-01
2008-04-042008-08-01
2008-04-052008-08-01
2008-04-062008-08-01
2008-04-072008-08-01
2008-04-082008-08-01
2008-04-092008-08-01
2008-04-102008-08-01
2008-04-112008-08-01
2008-04-122008-08-01
2008-04-132008-08-01
2008-04-142008-08-01
2008-04-152008-08-01
2008-04-162008-08-01
2008-04-172008-08-01
2008-04-182008-08-01
2008-04-192008-08-01
2008-04-202008-08-01
2008-04-212008-08-01
2008-04-222008-08-01
2008-04-232008-08-01
2008-04-242008-08-01
2008-04-252008-08-01
2008-04-262008-08-01
2008-04-272008-08-01
2008-04-282008-08-01
2008-04-292008-08-01
2008-04-302008-08-01
2008-05-012008-08-01
2008-05-022008-08-01
2008-05-032008-08-01
2008-05-042008-08-01
2008-05-052008-08-01
2008-05-062008-08-01
2008-05-072008-08-01
2008-05-082008-08-01
2008-05-092008-08-01
2008-05-102008-08-01
2008-05-112008-08-01
2008-05-122008-08-01
2008-05-132008-08-01
2008-05-142008-08-01
2008-05-152008-08-01
2008-05-162008-08-01
2008-05-172008-08-01
2008-05-182008-08-01
2008-05-192008-08-01
2008-05-202008-08-01
2008-05-212008-08-01
2008-05-222008-08-01
2008-05-232008-08-01
2008-05-242008-08-01
2008-05-252008-08-01
2008-05-262008-08-01
2008-05-272008-08-01
2008-05-282008-08-01
2008-05-292008-08-01
2008-05-302008-08-01
2008-05-312008-08-01
2008-06-012008-08-01
2008-06-022008-08-01
2008-06-032008-08-01
2008-06-042008-08-01
2008-06-052008-08-01
2008-06-062008-08-01
2008-06-072008-08-01
2008-06-082008-08-01
2008-06-092008-08-01
2008-06-102008-08-01
2008-06-112008-08-01
2008-06-122008-08-01
2008-06-132008-08-01
2008-06-142008-08-01
2008-06-152008-08-01
2008-06-162008-08-01
2008-06-172008-08-01
2008-06-182008-08-01
2008-06-192008-08-01
2008-06-202008-08-01
2008-06-212008-08-01
2008-06-222008-08-01
2008-06-232008-08-01
2008-06-242008-08-01
2008-06-252008-08-01
2008-06-262008-08-01
2008-06-272008-08-01
2008-06-282008-08-01
2008-06-292008-08-01
2008-06-302008-08-01
2008-07-012008-08-01
2008-07-022008-08-01
2008-07-032008-08-01
2008-07-042008-08-01
2008-07-052008-08-01
2008-07-062008-08-01
2008-07-072008-08-01
2008-07-082008-08-01
2008-07-092008-08-01
2008-07-102008-08-01
2008-07-112008-08-01
2008-07-122008-08-01
2008-07-132008-08-01
2008-07-142008-08-01
2008-07-152008-08-01
2008-07-162008-08-01
2008-07-172008-08-01
2008-07-182008-08-01
2008-07-192008-08-01
2008-07-202008-08-01
2008-07-212008-08-01
2008-07-222008-08-01
2008-07-232008-08-01
2008-07-242008-08-01
2008-07-252008-08-01
2008-07-262008-08-01
2008-07-272008-08-01
2008-07-282008-08-01
2008-07-292008-08-01
2008-07-302008-08-01
2008-07-312008-08-01
2008-08-012008-08-01

With the successful generation of the list of date values, the final task is to compare this list of date values to the date values remaining in Stacy’s database table. Any date value generated by applicable_date not also in the Stacy’s database table qualifies as a missing date or gap. To make this comparison, Oracle’s set operator, MINUS, is used. This set operator returns only those rows returned by the first query not also returned by the second query. While there are other ways to achieve the same thing, I do not believe there is another such method that aligns so closely to the pseudocode and high-level explanation of the task at hand.

See the updated code and corresponding output below. Notice applicable_date’s second attribute, end_date, is not used in the final output because it’s already served its purpose and is not needed for the comparison. Given the output, Stacy’s issue is significant. 1526 days’ worth of orders are missing from her database table.

WITH date_range (start_date, end_date) AS (
    SELECT
		TRUNC(MIN(oe.orders.order_date)) AS start_date,
		TRUNC(MAX(oe.orders.order_date)) AS end_date
    FROM
		oe.orders
),
applicable_date (date_value, end_date) AS (
    SELECT
		date_range.start_date AS date_value,
		date_range.end_date
    FROM
		date_range
    UNION ALL
    SELECT
		applicable_date.date_value + 1,
		applicable_date.end_date
    FROM
		applicable_date
    WHERE
		applicable_date.date_value < applicable_date.end_date
)
SELECT
	applicable_date.date_value
FROM
	applicable_date
MINUS
SELECT
	TRUNC(oe.orders.order_date)
FROM
	oe.orders;
date_value
2004-03-21
2004-03-22
2004-03-23
2004-03-24
2004-03-25
2004-03-26
2004-03-27
2004-03-28
2004-03-29
2004-03-30
2004-03-31
2004-04-01
2004-04-02
2004-04-03
2004-04-04
2004-04-05
2004-04-06
2004-04-07
2004-04-08
2004-04-09
2004-04-10
2004-04-11
2004-04-12
2004-04-13
2004-04-14
2004-04-15
2004-04-16
2004-04-17
2004-04-18
2004-04-19
2004-04-20
2004-04-21
2004-04-22
2004-04-23
2004-04-24
2004-04-25
2004-04-26
2004-04-27
2004-04-28
2004-04-29
2004-04-30
2004-05-01
2004-05-02
2004-05-03
2004-05-04
2004-05-05
2004-05-06
2004-05-07
2004-05-08
2004-05-09
2004-05-10
2004-05-11
2004-05-12
2004-05-13
2004-05-14
2004-05-15
2004-05-16
2004-05-17
2004-05-18
2004-05-19
2004-05-20
2004-05-21
2004-05-22
2004-05-23
2004-05-24
2004-05-25
2004-05-26
2004-05-27
2004-05-28
2004-05-29
2004-05-30
2004-05-31
2004-06-01
2004-06-02
2004-06-03
2004-06-04
2004-06-05
2004-06-06
2004-06-07
2004-06-08
2004-06-09
2004-06-10
2004-06-11
2004-06-12
2004-06-13
2004-06-14
2004-06-15
2004-06-16
2004-06-17
2004-06-18
2004-06-19
2004-06-20
2004-06-21
2004-06-22
2004-06-23
2004-06-24
2004-06-25
2004-06-26
2004-06-27
2004-06-28
2004-06-29
2004-06-30
2004-07-01
2004-07-02
2004-07-03
2004-07-04
2004-07-05
2004-07-06
2004-07-07
2004-07-08
2004-07-09
2004-07-10
2004-07-11
2004-07-12
2004-07-13
2004-07-14
2004-07-15
2004-07-16
2004-07-17
2004-07-18
2004-07-19
2004-07-20
2004-07-21
2004-07-22
2004-07-23
2004-07-24
2004-07-25
2004-07-26
2004-07-27
2004-07-28
2004-07-29
2004-07-30
2004-07-31
2004-08-01
2004-08-02
2004-08-03
2004-08-04
2004-08-05
2004-08-06
2004-08-07
2004-08-08
2004-08-09
2004-08-10
2004-08-11
2004-08-12
2004-08-13
2004-08-14
2004-08-15
2004-08-16
2004-08-17
2004-08-18
2004-08-19
2004-08-20
2004-08-21
2004-08-22
2004-08-23
2004-08-24
2004-08-25
2004-08-26
2004-08-27
2004-08-28
2004-08-29
2004-08-30
2004-08-31
2004-09-01
2004-09-02
2004-09-03
2004-09-04
2004-09-05
2004-09-06
2004-09-07
2004-09-08
2004-09-09
2004-09-10
2004-09-11
2004-09-12
2004-09-13
2004-09-14
2004-09-15
2004-09-16
2004-09-17
2004-09-18
2004-09-19
2004-09-20
2004-09-21
2004-09-22
2004-09-23
2004-09-24
2004-09-25
2004-09-26
2004-09-27
2004-09-28
2004-09-29
2004-09-30
2004-10-01
2004-10-02
2004-10-03
2004-10-04
2004-10-05
2004-10-06
2004-10-07
2004-10-08
2004-10-09
2004-10-10
2004-10-11
2004-10-12
2004-10-13
2004-10-14
2004-10-15
2004-10-16
2004-10-17
2004-10-18
2004-10-19
2004-10-20
2004-10-21
2004-10-22
2004-10-23
2004-10-24
2004-10-25
2004-10-26
2004-10-27
2004-10-28
2004-10-29
2004-10-30
2004-10-31
2004-11-01
2004-11-02
2004-11-03
2004-11-04
2004-11-05
2004-11-06
2004-11-07
2004-11-08
2004-11-09
2004-11-10
2004-11-11
2004-11-12
2004-11-13
2004-11-14
2004-11-15
2004-11-16
2004-11-17
2004-11-18
2004-11-19
2004-11-20
2004-11-21
2004-11-22
2004-11-23
2004-11-24
2004-11-25
2004-11-26
2004-11-27
2004-11-28
2004-11-29
2004-11-30
2004-12-01
2004-12-02
2004-12-03
2004-12-04
2004-12-05
2004-12-06
2004-12-07
2004-12-08
2004-12-09
2004-12-10
2004-12-11
2004-12-12
2004-12-13
2004-12-14
2004-12-15
2004-12-16
2004-12-17
2004-12-18
2004-12-19
2004-12-20
2004-12-21
2004-12-22
2004-12-23
2004-12-24
2004-12-25
2004-12-26
2004-12-27
2004-12-28
2004-12-29
2004-12-30
2004-12-31
2005-01-01
2005-01-02
2005-01-03
2005-01-04
2005-01-05
2005-01-06
2005-01-07
2005-01-08
2005-01-09
2005-01-10
2005-01-11
2005-01-12
2005-01-13
2005-01-14
2005-01-15
2005-01-16
2005-01-17
2005-01-18
2005-01-19
2005-01-20
2005-01-21
2005-01-22
2005-01-23
2005-01-24
2005-01-25
2005-01-26
2005-01-27
2005-01-28
2005-01-29
2005-01-30
2005-01-31
2005-02-01
2005-02-02
2005-02-03
2005-02-04
2005-02-05
2005-02-06
2005-02-07
2005-02-08
2005-02-09
2005-02-10
2005-02-11
2005-02-12
2005-02-13
2005-02-14
2005-02-15
2005-02-16
2005-02-17
2005-02-18
2005-02-19
2005-02-20
2005-02-21
2005-02-22
2005-02-23
2005-02-24
2005-02-25
2005-02-26
2005-02-27
2005-02-28
2005-03-01
2005-03-02
2005-03-03
2005-03-04
2005-03-05
2005-03-06
2005-03-07
2005-03-08
2005-03-09
2005-03-10
2005-03-11
2005-03-12
2005-03-13
2005-03-14
2005-03-15
2005-03-16
2005-03-17
2005-03-18
2005-03-19
2005-03-20
2005-03-21
2005-03-22
2005-03-23
2005-03-24
2005-03-25
2005-03-26
2005-03-27
2005-03-28
2005-03-29
2005-03-30
2005-03-31
2005-04-01
2005-04-02
2005-04-03
2005-04-04
2005-04-05
2005-04-06
2005-04-07
2005-04-08
2005-04-09
2005-04-10
2005-04-11
2005-04-12
2005-04-13
2005-04-14
2005-04-15
2005-04-16
2005-04-17
2005-04-18
2005-04-19
2005-04-20
2005-04-21
2005-04-22
2005-04-23
2005-04-24
2005-04-25
2005-04-26
2005-04-27
2005-04-28
2005-04-29
2005-04-30
2005-05-01
2005-05-02
2005-05-03
2005-05-04
2005-05-05
2005-05-06
2005-05-07
2005-05-08
2005-05-09
2005-05-10
2005-05-11
2005-05-12
2005-05-13
2005-05-14
2005-05-15
2005-05-16
2005-05-17
2005-05-18
2005-05-19
2005-05-20
2005-05-21
2005-05-22
2005-05-23
2005-05-24
2005-05-25
2005-05-26
2005-05-27
2005-05-28
2005-05-29
2005-05-30
2005-05-31
2005-06-01
2005-06-02
2005-06-03
2005-06-04
2005-06-05
2005-06-06
2005-06-07
2005-06-08
2005-06-09
2005-06-10
2005-06-11
2005-06-12
2005-06-13
2005-06-14
2005-06-15
2005-06-16
2005-06-17
2005-06-18
2005-06-19
2005-06-20
2005-06-21
2005-06-22
2005-06-23
2005-06-24
2005-06-25
2005-06-26
2005-06-27
2005-06-28
2005-06-29
2005-06-30
2005-07-01
2005-07-02
2005-07-03
2005-07-04
2005-07-05
2005-07-06
2005-07-07
2005-07-08
2005-07-09
2005-07-10
2005-07-11
2005-07-12
2005-07-13
2005-07-14
2005-07-15
2005-07-16
2005-07-17
2005-07-18
2005-07-19
2005-07-20
2005-07-21
2005-07-22
2005-07-23
2005-07-24
2005-07-25
2005-07-26
2005-07-27
2005-07-28
2005-07-29
2005-07-30
2005-07-31
2005-08-01
2005-08-02
2005-08-03
2005-08-04
2005-08-05
2005-08-06
2005-08-07
2005-08-08
2005-08-09
2005-08-10
2005-08-11
2005-08-12
2005-08-13
2005-08-14
2005-08-15
2005-08-16
2005-08-17
2005-08-18
2005-08-19
2005-08-20
2005-08-21
2005-08-22
2005-08-23
2005-08-24
2005-08-25
2005-08-26
2005-08-27
2005-08-28
2005-08-29
2005-08-30
2005-08-31
2005-09-01
2005-09-02
2005-09-03
2005-09-04
2005-09-05
2005-09-06
2005-09-07
2005-09-08
2005-09-09
2005-09-10
2005-09-11
2005-09-12
2005-09-13
2005-09-14
2005-09-15
2005-09-16
2005-09-17
2005-09-18
2005-09-19
2005-09-20
2005-09-21
2005-09-22
2005-09-23
2005-09-24
2005-09-25
2005-09-26
2005-09-27
2005-09-28
2005-09-29
2005-09-30
2005-10-01
2005-10-02
2005-10-03
2005-10-04
2005-10-05
2005-10-06
2005-10-07
2005-10-08
2005-10-09
2005-10-10
2005-10-11
2005-10-12
2005-10-13
2005-10-14
2005-10-15
2005-10-16
2005-10-17
2005-10-18
2005-10-19
2005-10-20
2005-10-21
2005-10-22
2005-10-23
2005-10-24
2005-10-25
2005-10-26
2005-10-27
2005-10-28
2005-10-29
2005-10-30
2005-10-31
2005-11-01
2005-11-02
2005-11-03
2005-11-04
2005-11-05
2005-11-06
2005-11-07
2005-11-08
2005-11-09
2005-11-10
2005-11-11
2005-11-12
2005-11-13
2005-11-14
2005-11-15
2005-11-16
2005-11-17
2005-11-18
2005-11-19
2005-11-20
2005-11-21
2005-11-22
2005-11-23
2005-11-24
2005-11-25
2005-11-26
2005-11-27
2005-11-28
2005-11-29
2005-11-30
2005-12-01
2005-12-02
2005-12-03
2005-12-04
2005-12-05
2005-12-06
2005-12-07
2005-12-08
2005-12-09
2005-12-10
2005-12-11
2005-12-12
2005-12-13
2005-12-14
2005-12-15
2005-12-16
2005-12-17
2005-12-18
2005-12-19
2005-12-20
2005-12-21
2005-12-22
2005-12-23
2005-12-24
2005-12-25
2005-12-26
2005-12-27
2005-12-28
2005-12-29
2005-12-30
2005-12-31
2006-01-01
2006-01-02
2006-01-03
2006-01-04
2006-01-05
2006-01-06
2006-01-07
2006-01-09
2006-01-10
2006-01-11
2006-01-12
2006-01-13
2006-01-14
2006-01-15
2006-01-16
2006-01-17
2006-01-18
2006-01-19
2006-01-20
2006-01-21
2006-01-22
2006-01-23
2006-01-24
2006-01-25
2006-01-27
2006-01-28
2006-01-29
2006-01-30
2006-01-31
2006-02-01
2006-02-03
2006-02-04
2006-02-05
2006-02-06
2006-02-07
2006-02-08
2006-02-09
2006-02-10
2006-02-11
2006-02-12
2006-02-13
2006-02-14
2006-02-15
2006-02-16
2006-02-17
2006-02-18
2006-02-19
2006-02-20
2006-02-21
2006-02-22
2006-02-23
2006-02-24
2006-02-25
2006-02-26
2006-02-28
2006-03-01
2006-03-02
2006-03-03
2006-03-04
2006-03-05
2006-03-06
2006-03-07
2006-03-08
2006-03-09
2006-03-10
2006-03-11
2006-03-12
2006-03-13
2006-03-14
2006-03-15
2006-03-16
2006-03-17
2006-03-18
2006-03-19
2006-03-20
2006-03-21
2006-03-22
2006-03-23
2006-03-24
2006-03-25
2006-03-26
2006-03-27
2006-03-28
2006-03-30
2006-03-31
2006-04-01
2006-04-02
2006-04-03
2006-04-04
2006-04-05
2006-04-06
2006-04-07
2006-04-08
2006-04-09
2006-04-10
2006-04-11
2006-04-12
2006-04-13
2006-04-14
2006-04-15
2006-04-16
2006-04-17
2006-04-18
2006-04-19
2006-04-20
2006-04-21
2006-04-22
2006-04-23
2006-04-24
2006-04-25
2006-04-26
2006-04-27
2006-04-28
2006-04-29
2006-04-30
2006-05-01
2006-05-02
2006-05-03
2006-05-04
2006-05-05
2006-05-06
2006-05-07
2006-05-08
2006-05-09
2006-05-10
2006-05-11
2006-05-12
2006-05-13
2006-05-14
2006-05-15
2006-05-16
2006-05-17
2006-05-18
2006-05-19
2006-05-20
2006-05-21
2006-05-22
2006-05-23
2006-05-24
2006-05-25
2006-05-26
2006-05-27
2006-05-28
2006-05-29
2006-05-30
2006-05-31
2006-06-01
2006-06-02
2006-06-03
2006-06-04
2006-06-05
2006-06-06
2006-06-07
2006-06-08
2006-06-09
2006-06-10
2006-06-11
2006-06-12
2006-06-13
2006-06-14
2006-06-15
2006-06-16
2006-06-17
2006-06-18
2006-06-19
2006-06-20
2006-06-21
2006-06-22
2006-06-23
2006-06-24
2006-06-25
2006-06-26
2006-06-27
2006-06-28
2006-06-29
2006-06-30
2006-07-01
2006-07-02
2006-07-03
2006-07-04
2006-07-05
2006-07-06
2006-07-07
2006-07-08
2006-07-09
2006-07-10
2006-07-11
2006-07-12
2006-07-13
2006-07-14
2006-07-15
2006-07-16
2006-07-17
2006-07-18
2006-07-19
2006-07-20
2006-07-21
2006-07-22
2006-07-23
2006-07-24
2006-07-25
2006-07-26
2006-07-28
2006-07-29
2006-07-30
2006-07-31
2006-08-01
2006-08-02
2006-08-03
2006-08-04
2006-08-05
2006-08-06
2006-08-07
2006-08-08
2006-08-09
2006-08-10
2006-08-11
2006-08-12
2006-08-13
2006-08-14
2006-08-15
2006-08-16
2006-08-17
2006-08-18
2006-08-19
2006-08-20
2006-08-21
2006-08-22
2006-08-23
2006-08-24
2006-08-25
2006-08-26
2006-08-27
2006-08-28
2006-08-29
2006-08-30
2006-08-31
2006-09-02
2006-09-03
2006-09-04
2006-09-05
2006-09-06
2006-09-07
2006-09-08
2006-09-09
2006-09-10
2006-09-11
2006-09-12
2006-09-13
2006-09-15
2006-09-16
2006-09-17
2006-09-18
2006-09-19
2006-09-20
2006-09-21
2006-09-22
2006-09-23
2006-09-24
2006-09-25
2006-09-26
2006-09-27
2006-09-28
2006-09-29
2006-09-30
2006-10-01
2006-10-02
2006-10-03
2006-10-04
2006-10-05
2006-10-06
2006-10-07
2006-10-08
2006-10-09
2006-10-10
2006-10-11
2006-10-12
2006-10-13
2006-10-14
2006-10-15
2006-10-16
2006-10-17
2006-10-18
2006-10-19
2006-10-20
2006-10-21
2006-10-22
2006-10-23
2006-10-24
2006-10-25
2006-10-26
2006-10-27
2006-10-28
2006-10-29
2006-10-30
2006-10-31
2006-11-01
2006-11-02
2006-11-03
2006-11-04
2006-11-05
2006-11-06
2006-11-08
2006-11-09
2006-11-10
2006-11-11
2006-11-12
2006-11-13
2006-11-14
2006-11-15
2006-11-18
2006-11-19
2006-11-20
2006-11-21
2006-11-22
2006-11-23
2006-11-24
2006-11-25
2006-11-26
2006-11-27
2006-11-28
2006-11-29
2006-11-30
2006-12-01
2006-12-02
2006-12-03
2006-12-04
2006-12-05
2006-12-06
2006-12-07
2006-12-08
2006-12-09
2006-12-10
2006-12-11
2006-12-12
2006-12-13
2006-12-14
2006-12-15
2006-12-16
2006-12-17
2006-12-18
2006-12-19
2006-12-20
2006-12-21
2006-12-22
2006-12-23
2006-12-24
2006-12-25
2006-12-26
2006-12-27
2006-12-28
2006-12-29
2006-12-30
2006-12-31
2007-01-01
2007-01-02
2007-01-03
2007-01-04
2007-01-05
2007-01-06
2007-01-07
2007-01-08
2007-01-09
2007-01-10
2007-01-11
2007-01-12
2007-01-13
2007-01-14
2007-01-15
2007-01-16
2007-01-17
2007-01-18
2007-01-19
2007-01-20
2007-01-21
2007-01-22
2007-01-23
2007-01-24
2007-01-25
2007-01-26
2007-01-27
2007-01-28
2007-01-29
2007-01-30
2007-01-31
2007-02-01
2007-02-02
2007-02-03
2007-02-04
2007-02-05
2007-02-06
2007-02-07
2007-02-08
2007-02-09
2007-02-10
2007-02-11
2007-02-12
2007-02-13
2007-02-14
2007-02-15
2007-02-16
2007-02-17
2007-02-18
2007-02-19
2007-02-20
2007-02-21
2007-02-22
2007-02-23
2007-02-24
2007-02-25
2007-02-28
2007-03-01
2007-03-02
2007-03-03
2007-03-04
2007-03-05
2007-03-06
2007-03-07
2007-03-08
2007-03-09
2007-03-10
2007-03-14
2007-03-15
2007-03-16
2007-03-17
2007-03-18
2007-03-19
2007-03-21
2007-03-22
2007-03-23
2007-03-24
2007-03-25
2007-03-26
2007-03-27
2007-03-28
2007-03-30
2007-03-31
2007-04-01
2007-04-02
2007-04-03
2007-04-04
2007-04-05
2007-04-06
2007-04-07
2007-04-08
2007-04-09
2007-04-10
2007-04-12
2007-04-13
2007-04-14
2007-04-15
2007-04-16
2007-04-17
2007-04-18
2007-04-19
2007-04-20
2007-04-21
2007-04-22
2007-04-23
2007-04-24
2007-04-25
2007-04-26
2007-04-27
2007-04-28
2007-04-29
2007-04-30
2007-05-01
2007-05-02
2007-05-03
2007-05-04
2007-05-05
2007-05-06
2007-05-07
2007-05-08
2007-05-09
2007-05-10
2007-05-11
2007-05-12
2007-05-13
2007-05-14
2007-05-15
2007-05-17
2007-05-18
2007-05-19
2007-05-20
2007-05-21
2007-05-22
2007-05-23
2007-05-25
2007-05-26
2007-05-27
2007-05-28
2007-05-29
2007-05-30
2007-05-31
2007-06-01
2007-06-02
2007-06-03
2007-06-05
2007-06-06
2007-06-08
2007-06-09
2007-06-10
2007-06-11
2007-06-12
2007-06-14
2007-06-15
2007-06-16
2007-06-17
2007-06-19
2007-06-20
2007-06-21
2007-06-22
2007-06-23
2007-06-24
2007-06-25
2007-06-27
2007-06-28
2007-06-30
2007-07-03
2007-07-04
2007-07-05
2007-07-06
2007-07-07
2007-07-08
2007-07-09
2007-07-11
2007-07-12
2007-07-13
2007-07-14
2007-07-15
2007-07-16
2007-07-17
2007-07-18
2007-07-19
2007-07-20
2007-07-22
2007-07-23
2007-07-24
2007-07-25
2007-07-26
2007-07-28
2007-07-29
2007-07-30
2007-07-31
2007-08-01
2007-08-02
2007-08-03
2007-08-04
2007-08-05
2007-08-06
2007-08-07
2007-08-08
2007-08-09
2007-08-10
2007-08-11
2007-08-12
2007-08-13
2007-08-14
2007-08-15
2007-08-17
2007-08-18
2007-08-19
2007-08-20
2007-08-21
2007-08-22
2007-08-23
2007-08-24
2007-08-25
2007-08-26
2007-08-27
2007-08-29
2007-08-30
2007-09-03
2007-09-04
2007-09-05
2007-09-06
2007-09-07
2007-09-08
2007-09-09
2007-09-10
2007-09-11
2007-09-12
2007-09-15
2007-09-16
2007-09-17
2007-09-18
2007-09-19
2007-09-21
2007-09-22
2007-09-23
2007-09-24
2007-09-25
2007-09-26
2007-09-27
2007-09-28
2007-09-29
2007-09-30
2007-10-01
2007-10-03
2007-10-05
2007-10-07
2007-10-08
2007-10-09
2007-10-10
2007-10-11
2007-10-12
2007-10-13
2007-10-14
2007-10-15
2007-10-16
2007-10-17
2007-10-18
2007-10-19
2007-10-20
2007-10-21
2007-10-22
2007-10-24
2007-10-25
2007-10-26
2007-10-27
2007-10-28
2007-10-29
2007-10-30
2007-11-01
2007-11-02
2007-11-03
2007-11-04
2007-11-05
2007-11-06
2007-11-07
2007-11-08
2007-11-09
2007-11-11
2007-11-12
2007-11-15
2007-11-16
2007-11-17
2007-11-20
2007-11-22
2007-11-23
2007-11-24
2007-11-25
2007-11-26
2007-11-27
2007-11-28
2007-11-29
2007-11-30
2007-12-01
2007-12-02
2007-12-03
2007-12-04
2007-12-05
2007-12-07
2007-12-09
2007-12-10
2007-12-11
2007-12-12
2007-12-13
2007-12-14
2007-12-15
2007-12-18
2007-12-19
2007-12-20
2007-12-21
2007-12-22
2007-12-23
2007-12-24
2007-12-25
2007-12-26
2007-12-27
2007-12-28
2007-12-29
2007-12-30
2007-12-31
2008-01-01
2008-01-02
2008-01-03
2008-01-04
2008-01-05
2008-01-06
2008-01-07
2008-01-09
2008-01-10
2008-01-11
2008-01-12
2008-01-13
2008-01-14
2008-01-15
2008-01-16
2008-01-17
2008-01-18
2008-01-19
2008-01-20
2008-01-21
2008-01-22
2008-01-23
2008-01-24
2008-01-25
2008-01-27
2008-01-28
2008-01-29
2008-01-30
2008-01-31
2008-02-01
2008-02-02
2008-02-03
2008-02-04
2008-02-05
2008-02-06
2008-02-07
2008-02-08
2008-02-09
2008-02-11
2008-02-12
2008-02-13
2008-02-14
2008-02-15
2008-02-16
2008-02-17
2008-02-18
2008-02-19
2008-02-20
2008-02-21
2008-02-22
2008-02-23
2008-02-24
2008-02-25
2008-02-26
2008-02-28
2008-02-29
2008-03-01
2008-03-02
2008-03-03
2008-03-04
2008-03-05
2008-03-06
2008-03-07
2008-03-08
2008-03-09
2008-03-10
2008-03-11
2008-03-12
2008-03-13
2008-03-14
2008-03-15
2008-03-16
2008-03-17
2008-03-18
2008-03-19
2008-03-20
2008-03-21
2008-03-22
2008-03-23
2008-03-24
2008-03-25
2008-03-26
2008-03-27
2008-03-28
2008-03-30
2008-03-31
2008-04-01
2008-04-02
2008-04-03
2008-04-04
2008-04-05
2008-04-06
2008-04-07
2008-04-08
2008-04-09
2008-04-10
2008-04-11
2008-04-12
2008-04-13
2008-04-14
2008-04-15
2008-04-16
2008-04-17
2008-04-18
2008-04-19
2008-04-20
2008-04-21
2008-04-22
2008-04-23
2008-04-24
2008-04-25
2008-04-26
2008-04-27
2008-04-28
2008-04-29
2008-04-30
2008-05-01
2008-05-02
2008-05-03
2008-05-04
2008-05-05
2008-05-06
2008-05-07
2008-05-08
2008-05-09
2008-05-10
2008-05-11
2008-05-13
2008-05-15
2008-05-16
2008-05-17
2008-05-18
2008-05-19
2008-05-20
2008-05-21
2008-05-22
2008-05-23
2008-05-25
2008-05-26
2008-05-27
2008-05-28
2008-05-29
2008-05-30
2008-05-31
2008-06-01
2008-06-02
2008-06-03
2008-06-05
2008-06-06
2008-06-07
2008-06-08
2008-06-09
2008-06-10
2008-06-11
2008-06-12
2008-06-13
2008-06-14
2008-06-15
2008-06-16
2008-06-17
2008-06-18
2008-06-19
2008-06-20
2008-06-21
2008-06-22
2008-06-23
2008-06-24
2008-06-25
2008-06-28
2008-06-29
2008-06-30
2008-07-01
2008-07-02
2008-07-03
2008-07-04
2008-07-05
2008-07-06
2008-07-07
2008-07-08
2008-07-09
2008-07-10
2008-07-11
2008-07-12
2008-07-13
2008-07-15
2008-07-16
2008-07-17
2008-07-18
2008-07-19
2008-07-20
2008-07-21
2008-07-22
2008-07-23
2008-07-24
2008-07-25
2008-07-26
2008-07-28
2008-07-29
2008-07-30
2008-07-31

Identifying & Excluding Weekends
When computing the amount of time elapsed between two events, it is often desirable to exclude weekends. To provide a concrete example, I’ve generated an output based on the pre-existing orders table. The code and corresponding output can be found below. As I progress through this example, I’ll develop the code further. Please note, the random shipping dates produced may differ if you were to execute the code at livesql.oracle.com due to the use of the function, DBMS_RANDOM.VALUE.

-- Set seed value for reproducibility. 
EXEC DBMS_RANDOM.SEED(42);

-- In the shipping CTE, fictitious shipping dates not falling on weekends are generated.
WITH shipping (order_id, order_date, ship_date) AS (
    SELECT
    	orders.order_id,
    	orders.order_date,
        DECODE(
    		TO_CHAR(orders.ship_date, 'D'),
    		1, orders.ship_date + 1,
    		7, orders.ship_date + 2,
    		orders.ship_date
    	) AS ship_date
    FROM (
        SELECT
        	oe.orders.order_id,
            TRUNC(oe.orders.order_date) AS order_date,
            TRUNC(oe.orders.order_date) + FLOOR(DBMS_RANDOM.VALUE(0, 31)) AS ship_date
        FROM
        	oe.orders
    ) orders
)
SELECT
	shipping.order_id,
	shipping.order_date,
	shipping.ship_date
FROM
	shipping;
order_idorder_dateship_date
24582007-08-162007-08-20
23972007-11-192007-12-10
24542007-10-022007-10-12
23542008-07-142008-08-11
23582008-01-082008-01-08
23812008-05-142008-05-15
24402007-08-312007-10-01
23572006-01-082006-01-24
23942008-02-102008-03-03
24352007-09-022007-09-13
24552007-09-202007-10-10
23792007-05-162007-06-13
23962006-02-022006-02-27
24062007-06-292007-07-02
24342007-09-132007-10-01
24362007-09-022007-09-10
24462007-07-272007-08-22
24472008-07-272008-08-26
24322007-09-142007-09-24
24332007-09-132007-09-26
23552006-01-262006-02-14
23562008-01-262008-01-28
23592006-01-082006-01-09
23602007-11-142007-12-14
23612007-11-132007-11-19
23622007-11-132007-11-22
23632007-10-232007-10-30
23642007-08-282007-09-19
23652007-08-282007-09-11
23662007-08-282007-09-19
23672008-06-272008-07-28
23682008-06-262008-07-14
23692007-06-262007-06-27
23702008-06-272008-07-14
23712007-05-162007-05-21
23722007-02-272007-03-28
23732008-02-272008-03-10
23742008-02-272008-03-03
23752007-02-262007-03-05
23762007-06-072007-07-02
23772007-06-072007-06-18
23782007-05-242007-06-21
23802007-05-162007-06-13
23822008-05-142008-06-04
23832008-05-122008-06-04
23842008-05-122008-05-29
23852007-12-082007-12-20
23862007-12-062008-01-03
23872007-03-112007-04-10
23882007-06-042007-06-11
23892008-06-042008-06-17
23902007-11-182007-11-26
23912006-02-272006-03-27
23922007-07-212007-08-06
23932008-02-102008-02-20
23952006-02-022006-02-27
23982007-11-192007-11-20
23992007-11-192007-12-10
24002007-07-102007-07-11
24012007-07-102007-07-16
24022007-07-022007-07-25
24032007-07-012007-07-16
24042007-07-012007-07-30
24052007-07-012007-07-02
24072007-06-292007-07-02
24082007-06-292007-07-27
24092007-06-292007-07-24
24102008-05-242008-06-09
24112007-05-242007-06-18
24122006-03-292006-04-03
24132008-03-292008-04-11
24142007-03-292007-04-03
24152006-03-292006-04-10
24162007-03-292007-04-02
24172007-03-202007-03-28
24182004-03-202004-04-05
24192007-03-202007-04-11
24202007-03-132007-04-06
24212007-03-122007-04-05
24222007-12-162008-01-11
24232007-11-212007-12-17
24242007-11-212007-11-21
24252006-11-162006-12-01
24262006-11-172006-11-20
24272007-11-102007-11-12
24282007-11-102007-11-15
24292007-11-102007-12-04
24302007-10-022007-10-22
24312006-09-142006-09-25
24372006-09-012006-09-01
24382007-09-012007-09-03
24392007-08-312007-09-03
24412008-08-012008-09-01
24422006-07-272006-08-28
24432006-07-272006-08-07
24442007-07-272007-08-01
24452006-07-272006-08-23
24482007-06-182007-07-02
24492007-06-132007-07-09
24502007-04-112007-05-02
24512007-12-172007-12-17
24522007-10-062007-11-05
24532007-10-042007-10-22
24562006-11-072006-12-04
24572007-10-312007-11-09

With the data above in mind, suppose there exists an online shoe store specializing in custom shoes. The owner of the store wishes to better understand the amount of time required to process each customer’s shoe order. In an effort to do so, the owner asks one of the analysts to generate a report containing, for each order, the order ID, order date, and the amount of time elapsed between the moment the customer placed the order and the date the order was shipped. In this hypothetical scenario, the employees responsible for processing customer orders do not work weekends, so it’s important the processing duration reflects the exclusion of weekends. How can the analyst successfully generate the desired report?

Like Stacy’s problem previously covered, the analyst needs to be able to distinguish one thing from another. In this case, weekends from weekdays. Previously, a recursive CTE was used to generate a list of date values occurring between a start date and an end date. The same strategy can be used here; however, while generating this list, the numeric value associated with the day of the week also needs to be derived. The TO_CHAR function with a specified format of “D,” achieves that. The code below contains the necessary additions. For clarity, I’ve also included the output generated from CTE, applicable_date.

-- Set seed value for reproducibility.
EXEC DBMS_RANDOM.SEED(42);

-- In the shipping CTE, fictitious shipping dates not falling on weekends are generated.
WITH shipping (order_id, order_date, ship_date) AS (
    SELECT
    	orders.order_id,
    	orders.order_date,
        DECODE(
    		TO_CHAR(orders.ship_date, 'D'),
    		1, orders.ship_date + 1,
    		7, orders.ship_date + 2,
    		orders.ship_date
    	) AS ship_date
    FROM (
        SELECT
        	oe.orders.order_id,
            TRUNC(oe.orders.order_date) AS order_date,
            TRUNC(oe.orders.order_date) + FLOOR(DBMS_RANDOM.VALUE(0, 31)) AS ship_date
        FROM
        	oe.orders
    ) orders
),
applicable_date (date_value, day_of_week, end_date) AS (
    SELECT
    	TRUNC(
            MIN(shipping.order_date)
        ) AS date_value,
        TO_CHAR(
            TRUNC(MIN(shipping.order_date)),
            'D'
        ) AS day_of_week,
        MAX(shipping.ship_date) AS end_date  
    FROM
    	shipping
    UNION ALL
    SELECT
    	applicable_date.date_value + 1,
        TO_CHAR(applicable_date.date_value + 1, 'D'),
    	applicable_date.end_date
    FROM
    	applicable_date
    WHERE
		applicable_date.date_value < applicable_date.end_date
)
SELECT
	applicable_date.date_value,
	applicable_date.day_of_week,
	applicable_date.end_date
FROM
	applicable_date;
date_valueday_of_weekend_date
2004-03-2072008-08-13
2004-03-2112008-08-13
2004-03-2222008-08-13
2004-03-2332008-08-13
2004-03-2442008-08-13
2004-03-2552008-08-13
2004-03-2662008-08-13
2004-03-2772008-08-13
2004-03-2812008-08-13
2004-03-2922008-08-13
2004-03-3032008-08-13
2004-03-3142008-08-13
2004-04-0152008-08-13
2004-04-0262008-08-13
2004-04-0372008-08-13
2004-04-0412008-08-13
2004-04-0522008-08-13
2004-04-0632008-08-13
2004-04-0742008-08-13
2004-04-0852008-08-13
2004-04-0962008-08-13
2004-04-1072008-08-13
2004-04-1112008-08-13
2004-04-1222008-08-13
2004-04-1332008-08-13
2004-04-1442008-08-13
2004-04-1552008-08-13
2004-04-1662008-08-13
2004-04-1772008-08-13
2004-04-1812008-08-13
2004-04-1922008-08-13
2004-04-2032008-08-13
2004-04-2142008-08-13
2004-04-2252008-08-13
2004-04-2362008-08-13
2004-04-2472008-08-13
2004-04-2512008-08-13
2004-04-2622008-08-13
2004-04-2732008-08-13
2004-04-2842008-08-13
2004-04-2952008-08-13
2004-04-3062008-08-13
2004-05-0172008-08-13
2004-05-0212008-08-13
2004-05-0322008-08-13
2004-05-0432008-08-13
2004-05-0542008-08-13
2004-05-0652008-08-13
2004-05-0762008-08-13
2004-05-0872008-08-13
2004-05-0912008-08-13
2004-05-1022008-08-13
2004-05-1132008-08-13
2004-05-1242008-08-13
2004-05-1352008-08-13
2004-05-1462008-08-13
2004-05-1572008-08-13
2004-05-1612008-08-13
2004-05-1722008-08-13
2004-05-1832008-08-13
2004-05-1942008-08-13
2004-05-2052008-08-13
2004-05-2162008-08-13
2004-05-2272008-08-13
2004-05-2312008-08-13
2004-05-2422008-08-13
2004-05-2532008-08-13
2004-05-2642008-08-13
2004-05-2752008-08-13
2004-05-2862008-08-13
2004-05-2972008-08-13
2004-05-3012008-08-13
2004-05-3122008-08-13
2004-06-0132008-08-13
2004-06-0242008-08-13
2004-06-0352008-08-13
2004-06-0462008-08-13
2004-06-0572008-08-13
2004-06-0612008-08-13
2004-06-0722008-08-13
2004-06-0832008-08-13
2004-06-0942008-08-13
2004-06-1052008-08-13
2004-06-1162008-08-13
2004-06-1272008-08-13
2004-06-1312008-08-13
2004-06-1422008-08-13
2004-06-1532008-08-13
2004-06-1642008-08-13
2004-06-1752008-08-13
2004-06-1862008-08-13
2004-06-1972008-08-13
2004-06-2012008-08-13
2004-06-2122008-08-13
2004-06-2232008-08-13
2004-06-2342008-08-13
2004-06-2452008-08-13
2004-06-2562008-08-13
2004-06-2672008-08-13
2004-06-2712008-08-13
2004-06-2822008-08-13
2004-06-2932008-08-13
2004-06-3042008-08-13
2004-07-0152008-08-13
2004-07-0262008-08-13
2004-07-0372008-08-13
2004-07-0412008-08-13
2004-07-0522008-08-13
2004-07-0632008-08-13
2004-07-0742008-08-13
2004-07-0852008-08-13
2004-07-0962008-08-13
2004-07-1072008-08-13
2004-07-1112008-08-13
2004-07-1222008-08-13
2004-07-1332008-08-13
2004-07-1442008-08-13
2004-07-1552008-08-13
2004-07-1662008-08-13
2004-07-1772008-08-13
2004-07-1812008-08-13
2004-07-1922008-08-13
2004-07-2032008-08-13
2004-07-2142008-08-13
2004-07-2252008-08-13
2004-07-2362008-08-13
2004-07-2472008-08-13
2004-07-2512008-08-13
2004-07-2622008-08-13
2004-07-2732008-08-13
2004-07-2842008-08-13
2004-07-2952008-08-13
2004-07-3062008-08-13
2004-07-3172008-08-13
2004-08-0112008-08-13
2004-08-0222008-08-13
2004-08-0332008-08-13
2004-08-0442008-08-13
2004-08-0552008-08-13
2004-08-0662008-08-13
2004-08-0772008-08-13
2004-08-0812008-08-13
2004-08-0922008-08-13
2004-08-1032008-08-13
2004-08-1142008-08-13
2004-08-1252008-08-13
2004-08-1362008-08-13
2004-08-1472008-08-13
2004-08-1512008-08-13
2004-08-1622008-08-13
2004-08-1732008-08-13
2004-08-1842008-08-13
2004-08-1952008-08-13
2004-08-2062008-08-13
2004-08-2172008-08-13
2004-08-2212008-08-13
2004-08-2322008-08-13
2004-08-2432008-08-13
2004-08-2542008-08-13
2004-08-2652008-08-13
2004-08-2762008-08-13
2004-08-2872008-08-13
2004-08-2912008-08-13
2004-08-3022008-08-13
2004-08-3132008-08-13
2004-09-0142008-08-13
2004-09-0252008-08-13
2004-09-0362008-08-13
2004-09-0472008-08-13
2004-09-0512008-08-13
2004-09-0622008-08-13
2004-09-0732008-08-13
2004-09-0842008-08-13
2004-09-0952008-08-13
2004-09-1062008-08-13
2004-09-1172008-08-13
2004-09-1212008-08-13
2004-09-1322008-08-13
2004-09-1432008-08-13
2004-09-1542008-08-13
2004-09-1652008-08-13
2004-09-1762008-08-13
2004-09-1872008-08-13
2004-09-1912008-08-13
2004-09-2022008-08-13
2004-09-2132008-08-13
2004-09-2242008-08-13
2004-09-2352008-08-13
2004-09-2462008-08-13
2004-09-2572008-08-13
2004-09-2612008-08-13
2004-09-2722008-08-13
2004-09-2832008-08-13
2004-09-2942008-08-13
2004-09-3052008-08-13
2004-10-0162008-08-13
2004-10-0272008-08-13
2004-10-0312008-08-13
2004-10-0422008-08-13
2004-10-0532008-08-13
2004-10-0642008-08-13
2004-10-0752008-08-13
2004-10-0862008-08-13
2004-10-0972008-08-13
2004-10-1012008-08-13
2004-10-1122008-08-13
2004-10-1232008-08-13
2004-10-1342008-08-13
2004-10-1452008-08-13
2004-10-1562008-08-13
2004-10-1672008-08-13
2004-10-1712008-08-13
2004-10-1822008-08-13
2004-10-1932008-08-13
2004-10-2042008-08-13
2004-10-2152008-08-13
2004-10-2262008-08-13
2004-10-2372008-08-13
2004-10-2412008-08-13
2004-10-2522008-08-13
2004-10-2632008-08-13
2004-10-2742008-08-13
2004-10-2852008-08-13
2004-10-2962008-08-13
2004-10-3072008-08-13
2004-10-3112008-08-13
2004-11-0122008-08-13
2004-11-0232008-08-13
2004-11-0342008-08-13
2004-11-0452008-08-13
2004-11-0562008-08-13
2004-11-0672008-08-13
2004-11-0712008-08-13
2004-11-0822008-08-13
2004-11-0932008-08-13
2004-11-1042008-08-13
2004-11-1152008-08-13
2004-11-1262008-08-13
2004-11-1372008-08-13
2004-11-1412008-08-13
2004-11-1522008-08-13
2004-11-1632008-08-13
2004-11-1742008-08-13
2004-11-1852008-08-13
2004-11-1962008-08-13
2004-11-2072008-08-13
2004-11-2112008-08-13
2004-11-2222008-08-13
2004-11-2332008-08-13
2004-11-2442008-08-13
2004-11-2552008-08-13
2004-11-2662008-08-13
2004-11-2772008-08-13
2004-11-2812008-08-13
2004-11-2922008-08-13
2004-11-3032008-08-13
2004-12-0142008-08-13
2004-12-0252008-08-13
2004-12-0362008-08-13
2004-12-0472008-08-13
2004-12-0512008-08-13
2004-12-0622008-08-13
2004-12-0732008-08-13
2004-12-0842008-08-13
2004-12-0952008-08-13
2004-12-1062008-08-13
2004-12-1172008-08-13
2004-12-1212008-08-13
2004-12-1322008-08-13
2004-12-1432008-08-13
2004-12-1542008-08-13
2004-12-1652008-08-13
2004-12-1762008-08-13
2004-12-1872008-08-13
2004-12-1912008-08-13
2004-12-2022008-08-13
2004-12-2132008-08-13
2004-12-2242008-08-13
2004-12-2352008-08-13
2004-12-2462008-08-13
2004-12-2572008-08-13
2004-12-2612008-08-13
2004-12-2722008-08-13
2004-12-2832008-08-13
2004-12-2942008-08-13
2004-12-3052008-08-13
2004-12-3162008-08-13
2005-01-0172008-08-13
2005-01-0212008-08-13
2005-01-0322008-08-13
2005-01-0432008-08-13
2005-01-0542008-08-13
2005-01-0652008-08-13
2005-01-0762008-08-13
2005-01-0872008-08-13
2005-01-0912008-08-13
2005-01-1022008-08-13
2005-01-1132008-08-13
2005-01-1242008-08-13
2005-01-1352008-08-13
2005-01-1462008-08-13
2005-01-1572008-08-13
2005-01-1612008-08-13
2005-01-1722008-08-13
2005-01-1832008-08-13
2005-01-1942008-08-13
2005-01-2052008-08-13
2005-01-2162008-08-13
2005-01-2272008-08-13
2005-01-2312008-08-13
2005-01-2422008-08-13
2005-01-2532008-08-13
2005-01-2642008-08-13
2005-01-2752008-08-13
2005-01-2862008-08-13
2005-01-2972008-08-13
2005-01-3012008-08-13
2005-01-3122008-08-13
2005-02-0132008-08-13
2005-02-0242008-08-13
2005-02-0352008-08-13
2005-02-0462008-08-13
2005-02-0572008-08-13
2005-02-0612008-08-13
2005-02-0722008-08-13
2005-02-0832008-08-13
2005-02-0942008-08-13
2005-02-1052008-08-13
2005-02-1162008-08-13
2005-02-1272008-08-13
2005-02-1312008-08-13
2005-02-1422008-08-13
2005-02-1532008-08-13
2005-02-1642008-08-13
2005-02-1752008-08-13
2005-02-1862008-08-13
2005-02-1972008-08-13
2005-02-2012008-08-13
2005-02-2122008-08-13
2005-02-2232008-08-13
2005-02-2342008-08-13
2005-02-2452008-08-13
2005-02-2562008-08-13
2005-02-2672008-08-13
2005-02-2712008-08-13
2005-02-2822008-08-13
2005-03-0132008-08-13
2005-03-0242008-08-13
2005-03-0352008-08-13
2005-03-0462008-08-13
2005-03-0572008-08-13
2005-03-0612008-08-13
2005-03-0722008-08-13
2005-03-0832008-08-13
2005-03-0942008-08-13
2005-03-1052008-08-13
2005-03-1162008-08-13
2005-03-1272008-08-13
2005-03-1312008-08-13
2005-03-1422008-08-13
2005-03-1532008-08-13
2005-03-1642008-08-13
2005-03-1752008-08-13
2005-03-1862008-08-13
2005-03-1972008-08-13
2005-03-2012008-08-13
2005-03-2122008-08-13
2005-03-2232008-08-13
2005-03-2342008-08-13
2005-03-2452008-08-13
2005-03-2562008-08-13
2005-03-2672008-08-13
2005-03-2712008-08-13
2005-03-2822008-08-13
2005-03-2932008-08-13
2005-03-3042008-08-13
2005-03-3152008-08-13
2005-04-0162008-08-13
2005-04-0272008-08-13
2005-04-0312008-08-13
2005-04-0422008-08-13
2005-04-0532008-08-13
2005-04-0642008-08-13
2005-04-0752008-08-13
2005-04-0862008-08-13
2005-04-0972008-08-13
2005-04-1012008-08-13
2005-04-1122008-08-13
2005-04-1232008-08-13
2005-04-1342008-08-13
2005-04-1452008-08-13
2005-04-1562008-08-13
2005-04-1672008-08-13
2005-04-1712008-08-13
2005-04-1822008-08-13
2005-04-1932008-08-13
2005-04-2042008-08-13
2005-04-2152008-08-13
2005-04-2262008-08-13
2005-04-2372008-08-13
2005-04-2412008-08-13
2005-04-2522008-08-13
2005-04-2632008-08-13
2005-04-2742008-08-13
2005-04-2852008-08-13
2005-04-2962008-08-13
2005-04-3072008-08-13
2005-05-0112008-08-13
2005-05-0222008-08-13
2005-05-0332008-08-13
2005-05-0442008-08-13
2005-05-0552008-08-13
2005-05-0662008-08-13
2005-05-0772008-08-13
2005-05-0812008-08-13
2005-05-0922008-08-13
2005-05-1032008-08-13
2005-05-1142008-08-13
2005-05-1252008-08-13
2005-05-1362008-08-13
2005-05-1472008-08-13
2005-05-1512008-08-13
2005-05-1622008-08-13
2005-05-1732008-08-13
2005-05-1842008-08-13
2005-05-1952008-08-13
2005-05-2062008-08-13
2005-05-2172008-08-13
2005-05-2212008-08-13
2005-05-2322008-08-13
2005-05-2432008-08-13
2005-05-2542008-08-13
2005-05-2652008-08-13
2005-05-2762008-08-13
2005-05-2872008-08-13
2005-05-2912008-08-13
2005-05-3022008-08-13
2005-05-3132008-08-13
2005-06-0142008-08-13
2005-06-0252008-08-13
2005-06-0362008-08-13
2005-06-0472008-08-13
2005-06-0512008-08-13
2005-06-0622008-08-13
2005-06-0732008-08-13
2005-06-0842008-08-13
2005-06-0952008-08-13
2005-06-1062008-08-13
2005-06-1172008-08-13
2005-06-1212008-08-13
2005-06-1322008-08-13
2005-06-1432008-08-13
2005-06-1542008-08-13
2005-06-1652008-08-13
2005-06-1762008-08-13
2005-06-1872008-08-13
2005-06-1912008-08-13
2005-06-2022008-08-13
2005-06-2132008-08-13
2005-06-2242008-08-13
2005-06-2352008-08-13
2005-06-2462008-08-13
2005-06-2572008-08-13
2005-06-2612008-08-13
2005-06-2722008-08-13
2005-06-2832008-08-13
2005-06-2942008-08-13
2005-06-3052008-08-13
2005-07-0162008-08-13
2005-07-0272008-08-13
2005-07-0312008-08-13
2005-07-0422008-08-13
2005-07-0532008-08-13
2005-07-0642008-08-13
2005-07-0752008-08-13
2005-07-0862008-08-13
2005-07-0972008-08-13
2005-07-1012008-08-13
2005-07-1122008-08-13
2005-07-1232008-08-13
2005-07-1342008-08-13
2005-07-1452008-08-13
2005-07-1562008-08-13
2005-07-1672008-08-13
2005-07-1712008-08-13
2005-07-1822008-08-13
2005-07-1932008-08-13
2005-07-2042008-08-13
2005-07-2152008-08-13
2005-07-2262008-08-13
2005-07-2372008-08-13
2005-07-2412008-08-13
2005-07-2522008-08-13
2005-07-2632008-08-13
2005-07-2742008-08-13
2005-07-2852008-08-13
2005-07-2962008-08-13
2005-07-3072008-08-13
2005-07-3112008-08-13
2005-08-0122008-08-13
2005-08-0232008-08-13
2005-08-0342008-08-13
2005-08-0452008-08-13
2005-08-0562008-08-13
2005-08-0672008-08-13
2005-08-0712008-08-13
2005-08-0822008-08-13
2005-08-0932008-08-13
2005-08-1042008-08-13
2005-08-1152008-08-13
2005-08-1262008-08-13
2005-08-1372008-08-13
2005-08-1412008-08-13
2005-08-1522008-08-13
2005-08-1632008-08-13
2005-08-1742008-08-13
2005-08-1852008-08-13
2005-08-1962008-08-13
2005-08-2072008-08-13
2005-08-2112008-08-13
2005-08-2222008-08-13
2005-08-2332008-08-13
2005-08-2442008-08-13
2005-08-2552008-08-13
2005-08-2662008-08-13
2005-08-2772008-08-13
2005-08-2812008-08-13
2005-08-2922008-08-13
2005-08-3032008-08-13
2005-08-3142008-08-13
2005-09-0152008-08-13
2005-09-0262008-08-13
2005-09-0372008-08-13
2005-09-0412008-08-13
2005-09-0522008-08-13
2005-09-0632008-08-13
2005-09-0742008-08-13
2005-09-0852008-08-13
2005-09-0962008-08-13
2005-09-1072008-08-13
2005-09-1112008-08-13
2005-09-1222008-08-13
2005-09-1332008-08-13
2005-09-1442008-08-13
2005-09-1552008-08-13
2005-09-1662008-08-13
2005-09-1772008-08-13
2005-09-1812008-08-13
2005-09-1922008-08-13
2005-09-2032008-08-13
2005-09-2142008-08-13
2005-09-2252008-08-13
2005-09-2362008-08-13
2005-09-2472008-08-13
2005-09-2512008-08-13
2005-09-2622008-08-13
2005-09-2732008-08-13
2005-09-2842008-08-13
2005-09-2952008-08-13
2005-09-3062008-08-13
2005-10-0172008-08-13
2005-10-0212008-08-13
2005-10-0322008-08-13
2005-10-0432008-08-13
2005-10-0542008-08-13
2005-10-0652008-08-13
2005-10-0762008-08-13
2005-10-0872008-08-13
2005-10-0912008-08-13
2005-10-1022008-08-13
2005-10-1132008-08-13
2005-10-1242008-08-13
2005-10-1352008-08-13
2005-10-1462008-08-13
2005-10-1572008-08-13
2005-10-1612008-08-13
2005-10-1722008-08-13
2005-10-1832008-08-13
2005-10-1942008-08-13
2005-10-2052008-08-13
2005-10-2162008-08-13
2005-10-2272008-08-13
2005-10-2312008-08-13
2005-10-2422008-08-13
2005-10-2532008-08-13
2005-10-2642008-08-13
2005-10-2752008-08-13
2005-10-2862008-08-13
2005-10-2972008-08-13
2005-10-3012008-08-13
2005-10-3122008-08-13
2005-11-0132008-08-13
2005-11-0242008-08-13
2005-11-0352008-08-13
2005-11-0462008-08-13
2005-11-0572008-08-13
2005-11-0612008-08-13
2005-11-0722008-08-13
2005-11-0832008-08-13
2005-11-0942008-08-13
2005-11-1052008-08-13
2005-11-1162008-08-13
2005-11-1272008-08-13
2005-11-1312008-08-13
2005-11-1422008-08-13
2005-11-1532008-08-13
2005-11-1642008-08-13
2005-11-1752008-08-13
2005-11-1862008-08-13
2005-11-1972008-08-13
2005-11-2012008-08-13
2005-11-2122008-08-13
2005-11-2232008-08-13
2005-11-2342008-08-13
2005-11-2452008-08-13
2005-11-2562008-08-13
2005-11-2672008-08-13
2005-11-2712008-08-13
2005-11-2822008-08-13
2005-11-2932008-08-13
2005-11-3042008-08-13
2005-12-0152008-08-13
2005-12-0262008-08-13
2005-12-0372008-08-13
2005-12-0412008-08-13
2005-12-0522008-08-13
2005-12-0632008-08-13
2005-12-0742008-08-13
2005-12-0852008-08-13
2005-12-0962008-08-13
2005-12-1072008-08-13
2005-12-1112008-08-13
2005-12-1222008-08-13
2005-12-1332008-08-13
2005-12-1442008-08-13
2005-12-1552008-08-13
2005-12-1662008-08-13
2005-12-1772008-08-13
2005-12-1812008-08-13
2005-12-1922008-08-13
2005-12-2032008-08-13
2005-12-2142008-08-13
2005-12-2252008-08-13
2005-12-2362008-08-13
2005-12-2472008-08-13
2005-12-2512008-08-13
2005-12-2622008-08-13
2005-12-2732008-08-13
2005-12-2842008-08-13
2005-12-2952008-08-13
2005-12-3062008-08-13
2005-12-3172008-08-13
2006-01-0112008-08-13
2006-01-0222008-08-13
2006-01-0332008-08-13
2006-01-0442008-08-13
2006-01-0552008-08-13
2006-01-0662008-08-13
2006-01-0772008-08-13
2006-01-0812008-08-13
2006-01-0922008-08-13
2006-01-1032008-08-13
2006-01-1142008-08-13
2006-01-1252008-08-13
2006-01-1362008-08-13
2006-01-1472008-08-13
2006-01-1512008-08-13
2006-01-1622008-08-13
2006-01-1732008-08-13
2006-01-1842008-08-13
2006-01-1952008-08-13
2006-01-2062008-08-13
2006-01-2172008-08-13
2006-01-2212008-08-13
2006-01-2322008-08-13
2006-01-2432008-08-13
2006-01-2542008-08-13
2006-01-2652008-08-13
2006-01-2762008-08-13
2006-01-2872008-08-13
2006-01-2912008-08-13
2006-01-3022008-08-13
2006-01-3132008-08-13
2006-02-0142008-08-13
2006-02-0252008-08-13
2006-02-0362008-08-13
2006-02-0472008-08-13
2006-02-0512008-08-13
2006-02-0622008-08-13
2006-02-0732008-08-13
2006-02-0842008-08-13
2006-02-0952008-08-13
2006-02-1062008-08-13
2006-02-1172008-08-13
2006-02-1212008-08-13
2006-02-1322008-08-13
2006-02-1432008-08-13
2006-02-1542008-08-13
2006-02-1652008-08-13
2006-02-1762008-08-13
2006-02-1872008-08-13
2006-02-1912008-08-13
2006-02-2022008-08-13
2006-02-2132008-08-13
2006-02-2242008-08-13
2006-02-2352008-08-13
2006-02-2462008-08-13
2006-02-2572008-08-13
2006-02-2612008-08-13
2006-02-2722008-08-13
2006-02-2832008-08-13
2006-03-0142008-08-13
2006-03-0252008-08-13
2006-03-0362008-08-13
2006-03-0472008-08-13
2006-03-0512008-08-13
2006-03-0622008-08-13
2006-03-0732008-08-13
2006-03-0842008-08-13
2006-03-0952008-08-13
2006-03-1062008-08-13
2006-03-1172008-08-13
2006-03-1212008-08-13
2006-03-1322008-08-13
2006-03-1432008-08-13
2006-03-1542008-08-13
2006-03-1652008-08-13
2006-03-1762008-08-13
2006-03-1872008-08-13
2006-03-1912008-08-13
2006-03-2022008-08-13
2006-03-2132008-08-13
2006-03-2242008-08-13
2006-03-2352008-08-13
2006-03-2462008-08-13
2006-03-2572008-08-13
2006-03-2612008-08-13
2006-03-2722008-08-13
2006-03-2832008-08-13
2006-03-2942008-08-13
2006-03-3052008-08-13
2006-03-3162008-08-13
2006-04-0172008-08-13
2006-04-0212008-08-13
2006-04-0322008-08-13
2006-04-0432008-08-13
2006-04-0542008-08-13
2006-04-0652008-08-13
2006-04-0762008-08-13
2006-04-0872008-08-13
2006-04-0912008-08-13
2006-04-1022008-08-13
2006-04-1132008-08-13
2006-04-1242008-08-13
2006-04-1352008-08-13
2006-04-1462008-08-13
2006-04-1572008-08-13
2006-04-1612008-08-13
2006-04-1722008-08-13
2006-04-1832008-08-13
2006-04-1942008-08-13
2006-04-2052008-08-13
2006-04-2162008-08-13
2006-04-2272008-08-13
2006-04-2312008-08-13
2006-04-2422008-08-13
2006-04-2532008-08-13
2006-04-2642008-08-13
2006-04-2752008-08-13
2006-04-2862008-08-13
2006-04-2972008-08-13
2006-04-3012008-08-13
2006-05-0122008-08-13
2006-05-0232008-08-13
2006-05-0342008-08-13
2006-05-0452008-08-13
2006-05-0562008-08-13
2006-05-0672008-08-13
2006-05-0712008-08-13
2006-05-0822008-08-13
2006-05-0932008-08-13
2006-05-1042008-08-13
2006-05-1152008-08-13
2006-05-1262008-08-13
2006-05-1372008-08-13
2006-05-1412008-08-13
2006-05-1522008-08-13
2006-05-1632008-08-13
2006-05-1742008-08-13
2006-05-1852008-08-13
2006-05-1962008-08-13
2006-05-2072008-08-13
2006-05-2112008-08-13
2006-05-2222008-08-13
2006-05-2332008-08-13
2006-05-2442008-08-13
2006-05-2552008-08-13
2006-05-2662008-08-13
2006-05-2772008-08-13
2006-05-2812008-08-13
2006-05-2922008-08-13
2006-05-3032008-08-13
2006-05-3142008-08-13
2006-06-0152008-08-13
2006-06-0262008-08-13
2006-06-0372008-08-13
2006-06-0412008-08-13
2006-06-0522008-08-13
2006-06-0632008-08-13
2006-06-0742008-08-13
2006-06-0852008-08-13
2006-06-0962008-08-13
2006-06-1072008-08-13
2006-06-1112008-08-13
2006-06-1222008-08-13
2006-06-1332008-08-13
2006-06-1442008-08-13
2006-06-1552008-08-13
2006-06-1662008-08-13
2006-06-1772008-08-13
2006-06-1812008-08-13
2006-06-1922008-08-13
2006-06-2032008-08-13
2006-06-2142008-08-13
2006-06-2252008-08-13
2006-06-2362008-08-13
2006-06-2472008-08-13
2006-06-2512008-08-13
2006-06-2622008-08-13
2006-06-2732008-08-13
2006-06-2842008-08-13
2006-06-2952008-08-13
2006-06-3062008-08-13
2006-07-0172008-08-13
2006-07-0212008-08-13
2006-07-0322008-08-13
2006-07-0432008-08-13
2006-07-0542008-08-13
2006-07-0652008-08-13
2006-07-0762008-08-13
2006-07-0872008-08-13
2006-07-0912008-08-13
2006-07-1022008-08-13
2006-07-1132008-08-13
2006-07-1242008-08-13
2006-07-1352008-08-13
2006-07-1462008-08-13
2006-07-1572008-08-13
2006-07-1612008-08-13
2006-07-1722008-08-13
2006-07-1832008-08-13
2006-07-1942008-08-13
2006-07-2052008-08-13
2006-07-2162008-08-13
2006-07-2272008-08-13
2006-07-2312008-08-13
2006-07-2422008-08-13
2006-07-2532008-08-13
2006-07-2642008-08-13
2006-07-2752008-08-13
2006-07-2862008-08-13
2006-07-2972008-08-13
2006-07-3012008-08-13
2006-07-3122008-08-13
2006-08-0132008-08-13
2006-08-0242008-08-13
2006-08-0352008-08-13
2006-08-0462008-08-13
2006-08-0572008-08-13
2006-08-0612008-08-13
2006-08-0722008-08-13
2006-08-0832008-08-13
2006-08-0942008-08-13
2006-08-1052008-08-13
2006-08-1162008-08-13
2006-08-1272008-08-13
2006-08-1312008-08-13
2006-08-1422008-08-13
2006-08-1532008-08-13
2006-08-1642008-08-13
2006-08-1752008-08-13
2006-08-1862008-08-13
2006-08-1972008-08-13
2006-08-2012008-08-13
2006-08-2122008-08-13
2006-08-2232008-08-13
2006-08-2342008-08-13
2006-08-2452008-08-13
2006-08-2562008-08-13
2006-08-2672008-08-13
2006-08-2712008-08-13
2006-08-2822008-08-13
2006-08-2932008-08-13
2006-08-3042008-08-13
2006-08-3152008-08-13
2006-09-0162008-08-13
2006-09-0272008-08-13
2006-09-0312008-08-13
2006-09-0422008-08-13
2006-09-0532008-08-13
2006-09-0642008-08-13
2006-09-0752008-08-13
2006-09-0862008-08-13
2006-09-0972008-08-13
2006-09-1012008-08-13
2006-09-1122008-08-13
2006-09-1232008-08-13
2006-09-1342008-08-13
2006-09-1452008-08-13
2006-09-1562008-08-13
2006-09-1672008-08-13
2006-09-1712008-08-13
2006-09-1822008-08-13
2006-09-1932008-08-13
2006-09-2042008-08-13
2006-09-2152008-08-13
2006-09-2262008-08-13
2006-09-2372008-08-13
2006-09-2412008-08-13
2006-09-2522008-08-13
2006-09-2632008-08-13
2006-09-2742008-08-13
2006-09-2852008-08-13
2006-09-2962008-08-13
2006-09-3072008-08-13
2006-10-0112008-08-13
2006-10-0222008-08-13
2006-10-0332008-08-13
2006-10-0442008-08-13
2006-10-0552008-08-13
2006-10-0662008-08-13
2006-10-0772008-08-13
2006-10-0812008-08-13
2006-10-0922008-08-13
2006-10-1032008-08-13
2006-10-1142008-08-13
2006-10-1252008-08-13
2006-10-1362008-08-13
2006-10-1472008-08-13
2006-10-1512008-08-13
2006-10-1622008-08-13
2006-10-1732008-08-13
2006-10-1842008-08-13
2006-10-1952008-08-13
2006-10-2062008-08-13
2006-10-2172008-08-13
2006-10-2212008-08-13
2006-10-2322008-08-13
2006-10-2432008-08-13
2006-10-2542008-08-13
2006-10-2652008-08-13
2006-10-2762008-08-13
2006-10-2872008-08-13
2006-10-2912008-08-13
2006-10-3022008-08-13
2006-10-3132008-08-13
2006-11-0142008-08-13
2006-11-0252008-08-13
2006-11-0362008-08-13
2006-11-0472008-08-13
2006-11-0512008-08-13
2006-11-0622008-08-13
2006-11-0732008-08-13
2006-11-0842008-08-13
2006-11-0952008-08-13
2006-11-1062008-08-13
2006-11-1172008-08-13
2006-11-1212008-08-13
2006-11-1322008-08-13
2006-11-1432008-08-13
2006-11-1542008-08-13
2006-11-1652008-08-13
2006-11-1762008-08-13
2006-11-1872008-08-13
2006-11-1912008-08-13
2006-11-2022008-08-13
2006-11-2132008-08-13
2006-11-2242008-08-13
2006-11-2352008-08-13
2006-11-2462008-08-13
2006-11-2572008-08-13
2006-11-2612008-08-13
2006-11-2722008-08-13
2006-11-2832008-08-13
2006-11-2942008-08-13
2006-11-3052008-08-13
2006-12-0162008-08-13
2006-12-0272008-08-13
2006-12-0312008-08-13
2006-12-0422008-08-13
2006-12-0532008-08-13
2006-12-0642008-08-13
2006-12-0752008-08-13
2006-12-0862008-08-13
2006-12-0972008-08-13
2006-12-1012008-08-13
2006-12-1122008-08-13
2006-12-1232008-08-13
2006-12-1342008-08-13
2006-12-1452008-08-13
2006-12-1562008-08-13
2006-12-1672008-08-13
2006-12-1712008-08-13
2006-12-1822008-08-13
2006-12-1932008-08-13
2006-12-2042008-08-13
2006-12-2152008-08-13
2006-12-2262008-08-13
2006-12-2372008-08-13
2006-12-2412008-08-13
2006-12-2522008-08-13
2006-12-2632008-08-13
2006-12-2742008-08-13
2006-12-2852008-08-13
2006-12-2962008-08-13
2006-12-3072008-08-13
2006-12-3112008-08-13
2007-01-0122008-08-13
2007-01-0232008-08-13
2007-01-0342008-08-13
2007-01-0452008-08-13
2007-01-0562008-08-13
2007-01-0672008-08-13
2007-01-0712008-08-13
2007-01-0822008-08-13
2007-01-0932008-08-13
2007-01-1042008-08-13
2007-01-1152008-08-13
2007-01-1262008-08-13
2007-01-1372008-08-13
2007-01-1412008-08-13
2007-01-1522008-08-13
2007-01-1632008-08-13
2007-01-1742008-08-13
2007-01-1852008-08-13
2007-01-1962008-08-13
2007-01-2072008-08-13
2007-01-2112008-08-13
2007-01-2222008-08-13
2007-01-2332008-08-13
2007-01-2442008-08-13
2007-01-2552008-08-13
2007-01-2662008-08-13
2007-01-2772008-08-13
2007-01-2812008-08-13
2007-01-2922008-08-13
2007-01-3032008-08-13
2007-01-3142008-08-13
2007-02-0152008-08-13
2007-02-0262008-08-13
2007-02-0372008-08-13
2007-02-0412008-08-13
2007-02-0522008-08-13
2007-02-0632008-08-13
2007-02-0742008-08-13
2007-02-0852008-08-13
2007-02-0962008-08-13
2007-02-1072008-08-13
2007-02-1112008-08-13
2007-02-1222008-08-13
2007-02-1332008-08-13
2007-02-1442008-08-13
2007-02-1552008-08-13
2007-02-1662008-08-13
2007-02-1772008-08-13
2007-02-1812008-08-13
2007-02-1922008-08-13
2007-02-2032008-08-13
2007-02-2142008-08-13
2007-02-2252008-08-13
2007-02-2362008-08-13
2007-02-2472008-08-13
2007-02-2512008-08-13
2007-02-2622008-08-13
2007-02-2732008-08-13
2007-02-2842008-08-13
2007-03-0152008-08-13
2007-03-0262008-08-13
2007-03-0372008-08-13
2007-03-0412008-08-13
2007-03-0522008-08-13
2007-03-0632008-08-13
2007-03-0742008-08-13
2007-03-0852008-08-13
2007-03-0962008-08-13
2007-03-1072008-08-13
2007-03-1112008-08-13
2007-03-1222008-08-13
2007-03-1332008-08-13
2007-03-1442008-08-13
2007-03-1552008-08-13
2007-03-1662008-08-13
2007-03-1772008-08-13
2007-03-1812008-08-13
2007-03-1922008-08-13
2007-03-2032008-08-13
2007-03-2142008-08-13
2007-03-2252008-08-13
2007-03-2362008-08-13
2007-03-2472008-08-13
2007-03-2512008-08-13
2007-03-2622008-08-13
2007-03-2732008-08-13
2007-03-2842008-08-13
2007-03-2952008-08-13
2007-03-3062008-08-13
2007-03-3172008-08-13
2007-04-0112008-08-13
2007-04-0222008-08-13
2007-04-0332008-08-13
2007-04-0442008-08-13
2007-04-0552008-08-13
2007-04-0662008-08-13
2007-04-0772008-08-13
2007-04-0812008-08-13
2007-04-0922008-08-13
2007-04-1032008-08-13
2007-04-1142008-08-13
2007-04-1252008-08-13
2007-04-1362008-08-13
2007-04-1472008-08-13
2007-04-1512008-08-13
2007-04-1622008-08-13
2007-04-1732008-08-13
2007-04-1842008-08-13
2007-04-1952008-08-13
2007-04-2062008-08-13
2007-04-2172008-08-13
2007-04-2212008-08-13
2007-04-2322008-08-13
2007-04-2432008-08-13
2007-04-2542008-08-13
2007-04-2652008-08-13
2007-04-2762008-08-13
2007-04-2872008-08-13
2007-04-2912008-08-13
2007-04-3022008-08-13
2007-05-0132008-08-13
2007-05-0242008-08-13
2007-05-0352008-08-13
2007-05-0462008-08-13
2007-05-0572008-08-13
2007-05-0612008-08-13
2007-05-0722008-08-13
2007-05-0832008-08-13
2007-05-0942008-08-13
2007-05-1052008-08-13
2007-05-1162008-08-13
2007-05-1272008-08-13
2007-05-1312008-08-13
2007-05-1422008-08-13
2007-05-1532008-08-13
2007-05-1642008-08-13
2007-05-1752008-08-13
2007-05-1862008-08-13
2007-05-1972008-08-13
2007-05-2012008-08-13
2007-05-2122008-08-13
2007-05-2232008-08-13
2007-05-2342008-08-13
2007-05-2452008-08-13
2007-05-2562008-08-13
2007-05-2672008-08-13
2007-05-2712008-08-13
2007-05-2822008-08-13
2007-05-2932008-08-13
2007-05-3042008-08-13
2007-05-3152008-08-13
2007-06-0162008-08-13
2007-06-0272008-08-13
2007-06-0312008-08-13
2007-06-0422008-08-13
2007-06-0532008-08-13
2007-06-0642008-08-13
2007-06-0752008-08-13
2007-06-0862008-08-13
2007-06-0972008-08-13
2007-06-1012008-08-13
2007-06-1122008-08-13
2007-06-1232008-08-13
2007-06-1342008-08-13
2007-06-1452008-08-13
2007-06-1562008-08-13
2007-06-1672008-08-13
2007-06-1712008-08-13
2007-06-1822008-08-13
2007-06-1932008-08-13
2007-06-2042008-08-13
2007-06-2152008-08-13
2007-06-2262008-08-13
2007-06-2372008-08-13
2007-06-2412008-08-13
2007-06-2522008-08-13
2007-06-2632008-08-13
2007-06-2742008-08-13
2007-06-2852008-08-13
2007-06-2962008-08-13
2007-06-3072008-08-13
2007-07-0112008-08-13
2007-07-0222008-08-13
2007-07-0332008-08-13
2007-07-0442008-08-13
2007-07-0552008-08-13
2007-07-0662008-08-13
2007-07-0772008-08-13
2007-07-0812008-08-13
2007-07-0922008-08-13
2007-07-1032008-08-13
2007-07-1142008-08-13
2007-07-1252008-08-13
2007-07-1362008-08-13
2007-07-1472008-08-13
2007-07-1512008-08-13
2007-07-1622008-08-13
2007-07-1732008-08-13
2007-07-1842008-08-13
2007-07-1952008-08-13
2007-07-2062008-08-13
2007-07-2172008-08-13
2007-07-2212008-08-13
2007-07-2322008-08-13
2007-07-2432008-08-13
2007-07-2542008-08-13
2007-07-2652008-08-13
2007-07-2762008-08-13
2007-07-2872008-08-13
2007-07-2912008-08-13
2007-07-3022008-08-13
2007-07-3132008-08-13
2007-08-0142008-08-13
2007-08-0252008-08-13
2007-08-0362008-08-13
2007-08-0472008-08-13
2007-08-0512008-08-13
2007-08-0622008-08-13
2007-08-0732008-08-13
2007-08-0842008-08-13
2007-08-0952008-08-13
2007-08-1062008-08-13
2007-08-1172008-08-13
2007-08-1212008-08-13
2007-08-1322008-08-13
2007-08-1432008-08-13
2007-08-1542008-08-13
2007-08-1652008-08-13
2007-08-1762008-08-13
2007-08-1872008-08-13
2007-08-1912008-08-13
2007-08-2022008-08-13
2007-08-2132008-08-13
2007-08-2242008-08-13
2007-08-2352008-08-13
2007-08-2462008-08-13
2007-08-2572008-08-13
2007-08-2612008-08-13
2007-08-2722008-08-13
2007-08-2832008-08-13
2007-08-2942008-08-13
2007-08-3052008-08-13
2007-08-3162008-08-13
2007-09-0172008-08-13
2007-09-0212008-08-13
2007-09-0322008-08-13
2007-09-0432008-08-13
2007-09-0542008-08-13
2007-09-0652008-08-13
2007-09-0762008-08-13
2007-09-0872008-08-13
2007-09-0912008-08-13
2007-09-1022008-08-13
2007-09-1132008-08-13
2007-09-1242008-08-13
2007-09-1352008-08-13
2007-09-1462008-08-13
2007-09-1572008-08-13
2007-09-1612008-08-13
2007-09-1722008-08-13
2007-09-1832008-08-13
2007-09-1942008-08-13
2007-09-2052008-08-13
2007-09-2162008-08-13
2007-09-2272008-08-13
2007-09-2312008-08-13
2007-09-2422008-08-13
2007-09-2532008-08-13
2007-09-2642008-08-13
2007-09-2752008-08-13
2007-09-2862008-08-13
2007-09-2972008-08-13
2007-09-3012008-08-13
2007-10-0122008-08-13
2007-10-0232008-08-13
2007-10-0342008-08-13
2007-10-0452008-08-13
2007-10-0562008-08-13
2007-10-0672008-08-13
2007-10-0712008-08-13
2007-10-0822008-08-13
2007-10-0932008-08-13
2007-10-1042008-08-13
2007-10-1152008-08-13
2007-10-1262008-08-13
2007-10-1372008-08-13
2007-10-1412008-08-13
2007-10-1522008-08-13
2007-10-1632008-08-13
2007-10-1742008-08-13
2007-10-1852008-08-13
2007-10-1962008-08-13
2007-10-2072008-08-13
2007-10-2112008-08-13
2007-10-2222008-08-13
2007-10-2332008-08-13
2007-10-2442008-08-13
2007-10-2552008-08-13
2007-10-2662008-08-13
2007-10-2772008-08-13
2007-10-2812008-08-13
2007-10-2922008-08-13
2007-10-3032008-08-13
2007-10-3142008-08-13
2007-11-0152008-08-13
2007-11-0262008-08-13
2007-11-0372008-08-13
2007-11-0412008-08-13
2007-11-0522008-08-13
2007-11-0632008-08-13
2007-11-0742008-08-13
2007-11-0852008-08-13
2007-11-0962008-08-13
2007-11-1072008-08-13
2007-11-1112008-08-13
2007-11-1222008-08-13
2007-11-1332008-08-13
2007-11-1442008-08-13
2007-11-1552008-08-13
2007-11-1662008-08-13
2007-11-1772008-08-13
2007-11-1812008-08-13
2007-11-1922008-08-13
2007-11-2032008-08-13
2007-11-2142008-08-13
2007-11-2252008-08-13
2007-11-2362008-08-13
2007-11-2472008-08-13
2007-11-2512008-08-13
2007-11-2622008-08-13
2007-11-2732008-08-13
2007-11-2842008-08-13
2007-11-2952008-08-13
2007-11-3062008-08-13
2007-12-0172008-08-13
2007-12-0212008-08-13
2007-12-0322008-08-13
2007-12-0432008-08-13
2007-12-0542008-08-13
2007-12-0652008-08-13
2007-12-0762008-08-13
2007-12-0872008-08-13
2007-12-0912008-08-13
2007-12-1022008-08-13
2007-12-1132008-08-13
2007-12-1242008-08-13
2007-12-1352008-08-13
2007-12-1462008-08-13
2007-12-1572008-08-13
2007-12-1612008-08-13
2007-12-1722008-08-13
2007-12-1832008-08-13
2007-12-1942008-08-13
2007-12-2052008-08-13
2007-12-2162008-08-13
2007-12-2272008-08-13
2007-12-2312008-08-13
2007-12-2422008-08-13
2007-12-2532008-08-13
2007-12-2642008-08-13
2007-12-2752008-08-13
2007-12-2862008-08-13
2007-12-2972008-08-13
2007-12-3012008-08-13
2007-12-3122008-08-13
2008-01-0132008-08-13
2008-01-0242008-08-13
2008-01-0352008-08-13
2008-01-0462008-08-13
2008-01-0572008-08-13
2008-01-0612008-08-13
2008-01-0722008-08-13
2008-01-0832008-08-13
2008-01-0942008-08-13
2008-01-1052008-08-13
2008-01-1162008-08-13
2008-01-1272008-08-13
2008-01-1312008-08-13
2008-01-1422008-08-13
2008-01-1532008-08-13
2008-01-1642008-08-13
2008-01-1752008-08-13
2008-01-1862008-08-13
2008-01-1972008-08-13
2008-01-2012008-08-13
2008-01-2122008-08-13
2008-01-2232008-08-13
2008-01-2342008-08-13
2008-01-2452008-08-13
2008-01-2562008-08-13
2008-01-2672008-08-13
2008-01-2712008-08-13
2008-01-2822008-08-13
2008-01-2932008-08-13
2008-01-3042008-08-13
2008-01-3152008-08-13
2008-02-0162008-08-13
2008-02-0272008-08-13
2008-02-0312008-08-13
2008-02-0422008-08-13
2008-02-0532008-08-13
2008-02-0642008-08-13
2008-02-0752008-08-13
2008-02-0862008-08-13
2008-02-0972008-08-13
2008-02-1012008-08-13
2008-02-1122008-08-13
2008-02-1232008-08-13
2008-02-1342008-08-13
2008-02-1452008-08-13
2008-02-1562008-08-13
2008-02-1672008-08-13
2008-02-1712008-08-13
2008-02-1822008-08-13
2008-02-1932008-08-13
2008-02-2042008-08-13
2008-02-2152008-08-13
2008-02-2262008-08-13
2008-02-2372008-08-13
2008-02-2412008-08-13
2008-02-2522008-08-13
2008-02-2632008-08-13
2008-02-2742008-08-13
2008-02-2852008-08-13
2008-02-2962008-08-13
2008-03-0172008-08-13
2008-03-0212008-08-13
2008-03-0322008-08-13
2008-03-0432008-08-13
2008-03-0542008-08-13
2008-03-0652008-08-13
2008-03-0762008-08-13
2008-03-0872008-08-13
2008-03-0912008-08-13
2008-03-1022008-08-13
2008-03-1132008-08-13
2008-03-1242008-08-13
2008-03-1352008-08-13
2008-03-1462008-08-13
2008-03-1572008-08-13
2008-03-1612008-08-13
2008-03-1722008-08-13
2008-03-1832008-08-13
2008-03-1942008-08-13
2008-03-2052008-08-13
2008-03-2162008-08-13
2008-03-2272008-08-13
2008-03-2312008-08-13
2008-03-2422008-08-13
2008-03-2532008-08-13
2008-03-2642008-08-13
2008-03-2752008-08-13
2008-03-2862008-08-13
2008-03-2972008-08-13
2008-03-3012008-08-13
2008-03-3122008-08-13
2008-04-0132008-08-13
2008-04-0242008-08-13
2008-04-0352008-08-13
2008-04-0462008-08-13
2008-04-0572008-08-13
2008-04-0612008-08-13
2008-04-0722008-08-13
2008-04-0832008-08-13
2008-04-0942008-08-13
2008-04-1052008-08-13
2008-04-1162008-08-13
2008-04-1272008-08-13
2008-04-1312008-08-13
2008-04-1422008-08-13
2008-04-1532008-08-13
2008-04-1642008-08-13
2008-04-1752008-08-13
2008-04-1862008-08-13
2008-04-1972008-08-13
2008-04-2012008-08-13
2008-04-2122008-08-13
2008-04-2232008-08-13
2008-04-2342008-08-13
2008-04-2452008-08-13
2008-04-2562008-08-13
2008-04-2672008-08-13
2008-04-2712008-08-13
2008-04-2822008-08-13
2008-04-2932008-08-13
2008-04-3042008-08-13
2008-05-0152008-08-13
2008-05-0262008-08-13
2008-05-0372008-08-13
2008-05-0412008-08-13
2008-05-0522008-08-13
2008-05-0632008-08-13
2008-05-0742008-08-13
2008-05-0852008-08-13
2008-05-0962008-08-13
2008-05-1072008-08-13
2008-05-1112008-08-13
2008-05-1222008-08-13
2008-05-1332008-08-13
2008-05-1442008-08-13
2008-05-1552008-08-13
2008-05-1662008-08-13
2008-05-1772008-08-13
2008-05-1812008-08-13
2008-05-1922008-08-13
2008-05-2032008-08-13
2008-05-2142008-08-13
2008-05-2252008-08-13
2008-05-2362008-08-13
2008-05-2472008-08-13
2008-05-2512008-08-13
2008-05-2622008-08-13
2008-05-2732008-08-13
2008-05-2842008-08-13
2008-05-2952008-08-13
2008-05-3062008-08-13
2008-05-3172008-08-13
2008-06-0112008-08-13
2008-06-0222008-08-13
2008-06-0332008-08-13
2008-06-0442008-08-13
2008-06-0552008-08-13
2008-06-0662008-08-13
2008-06-0772008-08-13
2008-06-0812008-08-13
2008-06-0922008-08-13
2008-06-1032008-08-13
2008-06-1142008-08-13
2008-06-1252008-08-13
2008-06-1362008-08-13
2008-06-1472008-08-13
2008-06-1512008-08-13
2008-06-1622008-08-13
2008-06-1732008-08-13
2008-06-1842008-08-13
2008-06-1952008-08-13
2008-06-2062008-08-13
2008-06-2172008-08-13
2008-06-2212008-08-13
2008-06-2322008-08-13
2008-06-2432008-08-13
2008-06-2542008-08-13
2008-06-2652008-08-13
2008-06-2762008-08-13
2008-06-2872008-08-13
2008-06-2912008-08-13
2008-06-3022008-08-13
2008-07-0132008-08-13
2008-07-0242008-08-13
2008-07-0352008-08-13
2008-07-0462008-08-13
2008-07-0572008-08-13
2008-07-0612008-08-13
2008-07-0722008-08-13
2008-07-0832008-08-13
2008-07-0942008-08-13
2008-07-1052008-08-13
2008-07-1162008-08-13
2008-07-1272008-08-13
2008-07-1312008-08-13
2008-07-1422008-08-13
2008-07-1532008-08-13
2008-07-1642008-08-13
2008-07-1752008-08-13
2008-07-1862008-08-13
2008-07-1972008-08-13
2008-07-2012008-08-13
2008-07-2122008-08-13
2008-07-2232008-08-13
2008-07-2342008-08-13
2008-07-2452008-08-13
2008-07-2562008-08-13
2008-07-2672008-08-13
2008-07-2712008-08-13
2008-07-2822008-08-13
2008-07-2932008-08-13
2008-07-3042008-08-13
2008-07-3152008-08-13
2008-08-0162008-08-13
2008-08-0272008-08-13
2008-08-0312008-08-13
2008-08-0422008-08-13
2008-08-0532008-08-13
2008-08-0642008-08-13
2008-08-0752008-08-13
2008-08-0862008-08-13
2008-08-0972008-08-13
2008-08-1012008-08-13
2008-08-1122008-08-13
2008-08-1232008-08-13
2008-08-1342008-08-13

After generating the list of date values seen above, the list needs to subsequently be filtered to those date values representing weekends (i.e., Saturdays and Sundays). The CTE, weekend, achieves that task by filtering to those rows with a day_of_week value of 1 or 7. The values 1 and 7 correspond to Saturday and Sunday, respectively. See the augmented code and corresponding output below.

-- Set seed value for reproducibility.
EXEC DBMS_RANDOM.SEED(42);

-- In the shipping CTE, fictitious shipping dates not falling on weekends are generated.
WITH shipping (order_id, order_date, ship_date) AS (
    SELECT
    	orders.order_id,
    	orders.order_date,
        DECODE(
    		TO_CHAR(orders.ship_date, 'D'),
    		1, orders.ship_date + 1,
    		7, orders.ship_date + 2,
    		orders.ship_date
    	) AS ship_date
    FROM (
        SELECT
        	oe.orders.order_id,
            TRUNC(oe.orders.order_date) AS order_date,
            TRUNC(oe.orders.order_date) + FLOOR(DBMS_RANDOM.VALUE(0, 31)) AS ship_date
        FROM
        	oe.orders
    ) orders
),
applicable_date (date_value, day_of_week, end_date) AS (
    SELECT
    	TRUNC(
            MIN(shipping.order_date)
        ) AS date_value,
        TO_CHAR(
            TRUNC(MIN(shipping.order_date)),
            'D'
        ) AS day_of_week,
        MAX(shipping.ship_date) AS end_date  
    FROM
    	shipping
    UNION ALL
    SELECT
    	applicable_date.date_value + 1,
        TO_CHAR(applicable_date.date_value + 1, 'D'),
    	applicable_date.end_date
    FROM
    	applicable_date
    WHERE
		applicable_date.date_value < applicable_date.end_date
),
weekend (date_value, day_of_week) AS (
    SELECT
    	applicable_date.date_value,
        applicable_date.day_of_week
    FROM
    	applicable_date
    WHERE
    	applicable_date.day_of_week IN (1, 7)
)
SELECT
	weekend.date_value,
	weekend.day_of_week
FROM
	weekend;
date_valueday_of_week
2004-03-207
2004-03-211
2004-03-277
2004-03-281
2004-04-037
2004-04-041
2004-04-107
2004-04-111
2004-04-177
2004-04-181
2004-04-247
2004-04-251
2004-05-017
2004-05-021
2004-05-087
2004-05-091
2004-05-157
2004-05-161
2004-05-227
2004-05-231
2004-05-297
2004-05-301
2004-06-057
2004-06-061
2004-06-127
2004-06-131
2004-06-197
2004-06-201
2004-06-267
2004-06-271
2004-07-037
2004-07-041
2004-07-107
2004-07-111
2004-07-177
2004-07-181
2004-07-247
2004-07-251
2004-07-317
2004-08-011
2004-08-077
2004-08-081
2004-08-147
2004-08-151
2004-08-217
2004-08-221
2004-08-287
2004-08-291
2004-09-047
2004-09-051
2004-09-117
2004-09-121
2004-09-187
2004-09-191
2004-09-257
2004-09-261
2004-10-027
2004-10-031
2004-10-097
2004-10-101
2004-10-167
2004-10-171
2004-10-237
2004-10-241
2004-10-307
2004-10-311
2004-11-067
2004-11-071
2004-11-137
2004-11-141
2004-11-207
2004-11-211
2004-11-277
2004-11-281
2004-12-047
2004-12-051
2004-12-117
2004-12-121
2004-12-187
2004-12-191
2004-12-257
2004-12-261
2005-01-017
2005-01-021
2005-01-087
2005-01-091
2005-01-157
2005-01-161
2005-01-227
2005-01-231
2005-01-297
2005-01-301
2005-02-057
2005-02-061
2005-02-127
2005-02-131
2005-02-197
2005-02-201
2005-02-267
2005-02-271
2005-03-057
2005-03-061
2005-03-127
2005-03-131
2005-03-197
2005-03-201
2005-03-267
2005-03-271
2005-04-027
2005-04-031
2005-04-097
2005-04-101
2005-04-167
2005-04-171
2005-04-237
2005-04-241
2005-04-307
2005-05-011
2005-05-077
2005-05-081
2005-05-147
2005-05-151
2005-05-217
2005-05-221
2005-05-287
2005-05-291
2005-06-047
2005-06-051
2005-06-117
2005-06-121
2005-06-187
2005-06-191
2005-06-257
2005-06-261
2005-07-027
2005-07-031
2005-07-097
2005-07-101
2005-07-167
2005-07-171
2005-07-237
2005-07-241
2005-07-307
2005-07-311
2005-08-067
2005-08-071
2005-08-137
2005-08-141
2005-08-207
2005-08-211
2005-08-277
2005-08-281
2005-09-037
2005-09-041
2005-09-107
2005-09-111
2005-09-177
2005-09-181
2005-09-247
2005-09-251
2005-10-017
2005-10-021
2005-10-087
2005-10-091
2005-10-157
2005-10-161
2005-10-227
2005-10-231
2005-10-297
2005-10-301
2005-11-057
2005-11-061
2005-11-127
2005-11-131
2005-11-197
2005-11-201
2005-11-267
2005-11-271
2005-12-037
2005-12-041
2005-12-107
2005-12-111
2005-12-177
2005-12-181
2005-12-247
2005-12-251
2005-12-317
2006-01-011
2006-01-077
2006-01-081
2006-01-147
2006-01-151
2006-01-217
2006-01-221
2006-01-287
2006-01-291
2006-02-047
2006-02-051
2006-02-117
2006-02-121
2006-02-187
2006-02-191
2006-02-257
2006-02-261
2006-03-047
2006-03-051
2006-03-117
2006-03-121
2006-03-187
2006-03-191
2006-03-257
2006-03-261
2006-04-017
2006-04-021
2006-04-087
2006-04-091
2006-04-157
2006-04-161
2006-04-227
2006-04-231
2006-04-297
2006-04-301
2006-05-067
2006-05-071
2006-05-137
2006-05-141
2006-05-207
2006-05-211
2006-05-277
2006-05-281
2006-06-037
2006-06-041
2006-06-107
2006-06-111
2006-06-177
2006-06-181
2006-06-247
2006-06-251
2006-07-017
2006-07-021
2006-07-087
2006-07-091
2006-07-157
2006-07-161
2006-07-227
2006-07-231
2006-07-297
2006-07-301
2006-08-057
2006-08-061
2006-08-127
2006-08-131
2006-08-197
2006-08-201
2006-08-267
2006-08-271
2006-09-027
2006-09-031
2006-09-097
2006-09-101
2006-09-167
2006-09-171
2006-09-237
2006-09-241
2006-09-307
2006-10-011
2006-10-077
2006-10-081
2006-10-147
2006-10-151
2006-10-217
2006-10-221
2006-10-287
2006-10-291
2006-11-047
2006-11-051
2006-11-117
2006-11-121
2006-11-187
2006-11-191
2006-11-257
2006-11-261
2006-12-027
2006-12-031
2006-12-097
2006-12-101
2006-12-167
2006-12-171
2006-12-237
2006-12-241
2006-12-307
2006-12-311
2007-01-067
2007-01-071
2007-01-137
2007-01-141
2007-01-207
2007-01-211
2007-01-277
2007-01-281
2007-02-037
2007-02-041
2007-02-107
2007-02-111
2007-02-177
2007-02-181
2007-02-247
2007-02-251
2007-03-037
2007-03-041
2007-03-107
2007-03-111
2007-03-177
2007-03-181
2007-03-247
2007-03-251
2007-03-317
2007-04-011
2007-04-077
2007-04-081
2007-04-147
2007-04-151
2007-04-217
2007-04-221
2007-04-287
2007-04-291
2007-05-057
2007-05-061
2007-05-127
2007-05-131
2007-05-197
2007-05-201
2007-05-267
2007-05-271
2007-06-027
2007-06-031
2007-06-097
2007-06-101
2007-06-167
2007-06-171
2007-06-237
2007-06-241
2007-06-307
2007-07-011
2007-07-077
2007-07-081
2007-07-147
2007-07-151
2007-07-217
2007-07-221
2007-07-287
2007-07-291
2007-08-047
2007-08-051
2007-08-117
2007-08-121
2007-08-187
2007-08-191
2007-08-257
2007-08-261
2007-09-017
2007-09-021
2007-09-087
2007-09-091
2007-09-157
2007-09-161
2007-09-227
2007-09-231
2007-09-297
2007-09-301
2007-10-067
2007-10-071
2007-10-137
2007-10-141
2007-10-207
2007-10-211
2007-10-277
2007-10-281
2007-11-037
2007-11-041
2007-11-107
2007-11-111
2007-11-177
2007-11-181
2007-11-247
2007-11-251
2007-12-017
2007-12-021
2007-12-087
2007-12-091
2007-12-157
2007-12-161
2007-12-227
2007-12-231
2007-12-297
2007-12-301
2008-01-057
2008-01-061
2008-01-127
2008-01-131
2008-01-197
2008-01-201
2008-01-267
2008-01-271
2008-02-027
2008-02-031
2008-02-097
2008-02-101
2008-02-167
2008-02-171
2008-02-237
2008-02-241
2008-03-017
2008-03-021
2008-03-087
2008-03-091
2008-03-157
2008-03-161
2008-03-227
2008-03-231
2008-03-297
2008-03-301
2008-04-057
2008-04-061
2008-04-127
2008-04-131
2008-04-197
2008-04-201
2008-04-267
2008-04-271
2008-05-037
2008-05-041
2008-05-107
2008-05-111
2008-05-177
2008-05-181
2008-05-247
2008-05-251
2008-05-317
2008-06-011
2008-06-077
2008-06-081
2008-06-147
2008-06-151
2008-06-217
2008-06-221
2008-06-287
2008-06-291
2008-07-057
2008-07-061
2008-07-127
2008-07-131
2008-07-197
2008-07-201
2008-07-267
2008-07-271
2008-08-027
2008-08-031
2008-08-097
2008-08-101

At this point, all dates corresponding to weekends are known and can be excluded from each order’s processing duration. For each order, this can be achieved by simply subtracting the number of Saturdays and Sundays occurring between the order date and ship date. See the code and corresponding output below. The processing duration with and without weekends is included in the output for clarity.

-- Set seed value for reproducibility.
EXEC DBMS_RANDOM.SEED(42);

-- In the shipping CTE, fictitious shipping dates not falling on weekends are generated.
WITH shipping (order_id, order_date, ship_date) AS (
    SELECT
    	orders.order_id,
    	orders.order_date,
        DECODE(
    		TO_CHAR(orders.ship_date, 'D'),
    		1, orders.ship_date + 1,
    		7, orders.ship_date + 2,
    		orders.ship_date
    	) AS ship_date
    FROM (
        SELECT
        	oe.orders.order_id,
            TRUNC(oe.orders.order_date) AS order_date,
            TRUNC(oe.orders.order_date) + FLOOR(DBMS_RANDOM.VALUE(0, 31)) AS ship_date
        FROM
        	oe.orders
    ) orders
),
applicable_date (date_value, day_of_week, end_date) AS (
    SELECT
    	TRUNC(
            MIN(shipping.order_date)
        ) AS date_value,
        TO_CHAR(
            TRUNC(MIN(shipping.order_date)),
            'D'
        ) AS day_of_week,
        MAX(shipping.ship_date) AS end_date  
    FROM
    	shipping
    UNION ALL
    SELECT
    	applicable_date.date_value + 1,
        TO_CHAR(applicable_date.date_value + 1, 'D'),
    	applicable_date.end_date
    FROM
    	applicable_date
    WHERE
		applicable_date.date_value < applicable_date.end_date
),
weekend (date_value, day_of_week) AS (
    SELECT
    	applicable_date.date_value,
        applicable_date.day_of_week
    FROM
    	applicable_date
    WHERE
    	applicable_date.day_of_week IN (1, 7)
)
SELECT
    shipping.order_id,
    shipping.order_date,
    shipping.ship_date,
    shipping.ship_date - shipping.order_date AS processing_duration,
    (shipping.ship_date
        - shipping.order_date
        - ( SELECT
    			COUNT(*)
            FROM (
    			SELECT
    				weekend.date_value
                FROM
    				weekend
            ) weekend_list
            WHERE
    			weekend_list.date_value >= shipping.order_date
                AND weekend_list.date_value < shipping.ship_date
        )
    ) AS processing_duration_adjusted
FROM
    shipping;
order_idorder_dateship_dateprocessing_durationprocessing_duration_adjusted
24582007-08-162007-08-2042
23972007-11-192007-12-061713
24542007-10-022007-10-222014
23542008-07-142008-08-042115
23582008-01-082008-01-18108
23812008-05-142008-05-281410
24402007-08-312007-09-282820
23572006-01-082006-01-302215
23942008-02-102008-02-1110
24352007-09-022007-10-023021
24552007-09-202007-09-2111
23792007-05-162007-06-112618
23962006-02-022006-03-032921
24062007-06-292007-07-262719
24342007-09-132007-10-011812
24362007-09-022007-10-012920
24462007-07-272007-08-202416
24472008-07-272008-08-07118
24322007-09-142007-09-25117
24332007-09-132007-09-2075
23552006-01-262006-02-152014
23562008-01-262008-02-182315
23592006-01-082006-02-062920
23602007-11-142007-12-112719
23612007-11-132007-12-062317
23622007-11-132007-12-112820
23632007-10-232007-10-2411
23642007-08-282007-08-3133
23652007-08-282007-09-131612
23662007-08-282007-09-111410
23672008-06-272008-07-0364
23682008-06-262008-07-222618
23692007-06-262007-07-232719
23702008-06-272008-06-3031
23712007-05-162007-06-153022
23722007-02-272007-03-202115
23732008-02-272008-03-0797
23742008-02-272008-03-0686
23752007-02-262007-03-121410
23762007-06-072007-06-0811
23772007-06-072007-06-261913
23782007-05-242007-06-253222
23802007-05-162007-05-1822
23822008-05-142008-06-112820
23832008-05-122008-05-1311
23842008-05-122008-05-271511
23852007-12-082008-01-073020
23862007-12-062008-01-022719
23872007-03-112007-03-1985
23882007-06-042007-06-181410
23892008-06-042008-06-1397
23902007-11-182007-12-122417
23912006-02-272006-03-0675
23922007-07-212007-08-061610
23932008-02-102008-03-032215
23952006-02-022006-02-272517
23982007-11-192007-12-031410
23992007-11-192007-12-102115
24002007-07-102007-08-012216
24012007-07-102007-08-062719
24022007-07-022007-07-312921
24032007-07-012007-07-0432
24042007-07-012007-07-181712
24052007-07-012007-07-302920
24072007-06-292007-07-0231
24082007-06-292007-06-2900
24092007-06-292007-07-161711
24102008-05-242008-06-0295
24112007-05-242007-05-2953
24122006-03-292006-04-272921
24132008-03-292008-04-283020
24142007-03-292007-04-09117
24152006-03-292006-04-10128
24162007-03-292007-04-11139
24172007-03-202007-03-2664
24182004-03-202004-04-122315
24192007-03-202007-03-2664
24202007-03-132007-04-092719
24212007-03-122007-04-042317
24222007-12-162008-01-142920
24232007-11-212007-12-03128
24242007-11-212007-12-03128
24252006-11-162006-12-142820
24262006-11-172006-12-112416
24272007-11-102007-12-103020
24282007-11-102007-12-103020
24292007-11-102007-12-032315
24302007-10-022007-10-12108
24312006-09-142006-10-092517
24372006-09-012006-09-252416
24382007-09-012007-09-181711
24392007-08-312007-09-0775
24412008-08-012008-08-13128
24422006-07-272006-08-283222
24432006-07-272006-08-242820
24442007-07-272007-08-172115
24452006-07-272006-08-283222
24482007-06-182007-07-092115
24492007-06-132007-06-1853
24502007-04-112007-04-1875
24512007-12-172007-12-311410
24522007-10-062007-11-053020
24532007-10-042007-10-1175
24562006-11-072006-11-231612
24572007-10-312007-11-272719

Although the initial example covering the generation of a sequence of integer values may generally lack real-world application, I believe the subsequent examples featured above do. Look for opportunities to incorporate recursion into your solutions where it makes sense.