Selecting 1 most recent item from 3 categories
flag
Messages 1 - 9 of 15 - Collapse all
/groups/adfetch?adid=UUYu_xIAAAAEIgkHQJEajXOshxs8SHkDxyxpo7bMRVgpn9ZMKisPfQ
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Follow-up To:
Add Cc | Add Follow-up to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers that you hear
 
1.  Adam  
View profile   Translate to Translated (View Original)
 More options 20 July 2007, 17:25
Newsgroups: comp.databases.mysql
From: Adam <sty...@gmail.com>
Date: Fri, 20 Jul 2007 09:25:10 -0700
Local: Fri 20 July 2007 17:25
Subject: Selecting 1 most recent item from 3 categories
Hi, I have a table from which I want to select the most recent entry
from each category. The table looks like this:

+----------+-------------+-------------------+-------------------+
|    id     |    item    |    category    |    add_date   |

There are 3 different categories, just entered into the table as
varchar(30). "add_date" is datetime.

Any help would be much appreciated, thanks.

Adam


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
2.  Rik  
View profile   Translate to Translated (View Original)
 More options 20 July 2007, 18:06
Newsgroups: comp.databases.mysql
From: Rik <luiheidsgoe...@hotmail.com>
Date: Fri, 20 Jul 2007 19:06:55 +0200
Local: Fri 20 July 2007 18:06
Subject: Re: Selecting 1 most recent item from 3 categories

On Fri, 20 Jul 2007 18:25:10 +0200, Adam <sty...@gmail.com> wrote:
> Hi, I have a table from which I want to select the most recent entry
> from each category. The table looks like this:

> +----------+-------------+-------------------+-------------------+
> |    id     |    item    |    category    |    add_date   |

> There are 3 different categories, just entered into the table as
> varchar(30). "add_date" is datetime.

Do you want the ID or just the list?

Without ID is the simplest:

SELECT category, MAX(add_date) FROM table GROUP BY category

With ID it's quite different:

SELECT
        x.id
        x.category
        x.add_date
 FROM table x
JOIN (SELECT category, MAX(add_date) FROM table GROUP BY category) y
ON y.category = x. category
AND y.add_date = x. add_date

(anyone know a shorter one, seems a bit cludgy?)
--
Rik Wasmus


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
3.  Adam  
View profile   Translate to Translated (View Original)
 More options 20 July 2007, 18:24
Newsgroups: comp.databases.mysql
From: Adam <sty...@gmail.com>
Date: Fri, 20 Jul 2007 10:24:47 -0700
Local: Fri 20 July 2007 18:24
Subject: Re: Selecting 1 most recent item from 3 categories
On Jul 20, 1:06 pm, Rik <luiheidsgoe...@hotmail.com> wrote:

Sorry, to clarify I actually want to pull the item names (defined by
"item"). I will try to use your second example, just substituting
where appropriate.

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
4.  ZeldorBlat  
View profile   Translate to Translated (View Original)
 More options 20 July 2007, 20:04
Newsgroups: comp.databases.mysql
From: ZeldorBlat <zeldorb...@gmail.com>
Date: Fri, 20 Jul 2007 19:04:27 -0000
Local: Fri 20 July 2007 20:04
Subject: Re: Selecting 1 most recent item from 3 categories
On Jul 20, 1:06 pm, Rik <luiheidsgoe...@hotmail.com> wrote:

That probably is the best way.  You could probably do something like
this, but the performance probably won't be as good:

SELECT x.id,
       x.category,
       x.add_date
FROM table x
WHERE x.add_date = (SELECT MAX(y.add_date) FROM table y WHERE
y.category = x.category)


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
6.  Rik  
View profile   Translate to Translated (View Original)
 More options 20 July 2007, 20:56
Newsgroups: comp.databases.mysql
From: Rik <luiheidsgoe...@hotmail.com>
Date: Fri, 20 Jul 2007 21:56:31 +0200
Local: Fri 20 July 2007 20:56
Subject: Re: Selecting 1 most recent item from 3 categories

On Fri, 20 Jul 2007 21:40:26 +0200, Adam <sty...@gmail.com> wrote:
> To summarize, I'm wanting to choose the most recent item (and I'll be
> using the "item" column for my purposes) from each of the 3
> categories. So three items, one from each category.

Ahum, one?
Can you be absoutely 100% sure there is just 1 item with the maximum?
--
Rik Wasmus

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
7.  lark  
View profile   Translate to Translated (View Original)
 More options 20 July 2007, 20:33
Newsgroups: comp.databases.mysql
From: lark <ham...@sbcglobal.net>
Date: Fri, 20 Jul 2007 19:33:19 GMT
Local: Fri 20 July 2007 20:33
Subject: Re: Selecting 1 most recent item from 3 categories

couldn't you also use his first one like this:
select item, category, max(add_date) from table group by category limit 3;

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
8.  Rik  
View profile   Translate to Translated (View Original)
 More options 20 July 2007, 20:59
Newsgroups: comp.databases.mysql
From: Rik <luiheidsgoe...@hotmail.com>
Date: Fri, 20 Jul 2007 21:59:19 +0200
Local: Fri 20 July 2007 20:59
Subject: Re: Selecting 1 most recent item from 3 categories

I think you're missing the point. He states he wants the most recent entry  
 from _each_ category. There just _happen_ to be three. But if you only  
want three, by all means, use a limit.
--
Rik Wasmus

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
9.  Adam  
View profile   Translate to Translated (View Original)
 More options 20 July 2007, 21:04
Newsgroups: comp.databases.mysql
From: Adam <sty...@gmail.com>
Date: Fri, 20 Jul 2007 13:04:34 -0700
Local: Fri 20 July 2007 21:04
Subject: Re: Selecting 1 most recent item from 3 categories
On Jul 20, 3:59 pm, Rik <luiheidsgoe...@hotmail.com> wrote:

There will definitely only be three, as it's a very small and simple
utility for someone to add items to be donated. There are 3 donation
categories, so I'm trying to show the 1 most recently requested
donation from each category.

At any rate, I think I, and others, have supplied the right method but
there must be something wrong with my data, because it seems to just
be picking one random one from each category. It's always the same 3,
but they're not the most recent.


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
10.  Paul Lautman  
View profile   Translate to Translated (View Original)
 More options 20 July 2007, 21:27
Newsgroups: comp.databases.mysql
From: "Paul Lautman" <paul.laut...@btinternet.com>
Date: Fri, 20 Jul 2007 21:27:50 +0100
Local: Fri 20 July 2007 21:27
Subject: Re: Selecting 1 most recent item from 3 categories

"Adam" <sty...@gmail.com> wrote in message

news:1184948710.062291.55830@w3g2000hsg.googlegroups.com...

> Hi, I have a table from which I want to select the most recent entry
> from each category. The table looks like this:

> +----------+-------------+-------------------+-------------------+
> |    id     |    item    |    category    |    add_date   |

> There are 3 different categories, just entered into the table as
> varchar(30). "add_date" is datetime.

> Any help would be much appreciated, thanks.

> Adam

Do a search on this forum for "Strawberry Query", that'll do exactly what
you want

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google