|
Posted by Roy Harvey (SQL Server MVP) on 01/29/08 20:08
I assume you are looking for something beyond just retrieving the last
five orders - say using the data in the Orders table to control the
data being retrieved from some other table entirely.
This gets the date range for the most recent five orders by customer.
SELECT CustomerID,
MIN(OrderDate) as StartDate,
MAX(OrderDate) as EndDate
FROM Orders as A
WHERE OrderID IN
(SELECT TOP 5 B.OrderID
FROM Orders as B
WHERE A.CustomerID = B.CustomerID
ORDER BY B.OrderDate DESC)
GROUP BY CustomerID
I will leave it to you to apply that data to whatever table is
required.
Roy Harvey
Beacon Falls, CT
On Tue, 29 Jan 2008 10:46:47 -0800 (PST), "lee.richmond"
<Richmolj@gmail.com> wrote:
>Hi,
>
>I'm trying to group data by date range, but each row of data could
>have a different date range based on a variable.
>
>I want to say "look at the date range the paste five orders were
>placed" for each row individually. As an example, think of the rows as
>keywords in a Search Marketing program. Keyword X had 5 orders placed
>in the last week, Keyword Y had 5 orders placed in the last 2 weeks. I
>want each keyword to display its average impressions over the course
>of its respective date range.
>
>Is this possible?
>
>Thanks in advance!
[Back to original message]
|