[gameprogrammer] Re: SQL question
- From: Vince <uberneen@xxxxxxxxx>
- To: gameprogrammer@xxxxxxxxxxxxx
- Date: Sat, 17 Jun 2006 21:22:12 -0700 (PDT)
I'm with Mike on this one.
SELECT * from FileVersionHistory WHERE
filename='File1' ORDER BY modificationDate DESC LIMIT
1;
--- brian <brianevans@xxxxxxxxxxxxxxx> wrote:
> Perhaps you could use group by?
>
> select filename, MAX(modificationDate) from
> FileVersionHistory group by
> filename order by filename asc
>
> If that syntax doesn't work for you, something
> similar should. :P
>
>
>
> On Sat, 17 Jun 2006 22:17:28 -0500, Mike Gillissie
> <Niyoto@xxxxxxxxxx>
> wrote:
>
> > I'm a little rusty on this, but can't you do an
> ORDER BY to sort by the
> > modification date, then either add a "LIMIT 1" if
> your db supports it,
> > or just use the first element of the record set?
> >
> > ----- Original Message ----- From: "Kevin Jenkins"
>
> > <gameprogrammer@xxxxxxxxxx>
> > To: <gameprogrammer@xxxxxxxxxxxxx>
> > Sent: Saturday, June 17, 2006 7:20 PM
> > Subject: [gameprogrammer] SQL question
> >
> >
> >> I have a table with a list of files and dates.
> Each file may have
> >> multiple dates. So I want to get a list of files
> with the greatest
> >> date for each file.
> >>
> >> I got this far:
> >>
> >> -- Find row of a particular file with greatest
> date for that file.
> >> SELECT * from FileVersionHistory WHERE
> modificationDate = (SELECT
> >> max(modificationDate) FROM FileVersionHistory
> WHERE filename='File1');
> >>
> >> If I were to call that a bunch of times,
> replacing File1 with the name
> >> of each unique file in the table, then it would
> work. I can't figure
> >> out how to do that automatically though.
> >>
> >> Here is the table:
> >>
> >> CREATE TABLE Applications (
> >> applicationKey serial PRIMARY KEY
> UNIQUE,
> >> applicationName text NOT NULL UNIQUE,
> >> installPath text NOT NULL,
> >> changeSetID integer NOT NULL DEFAULT
> 0, -- User should
> >> increment once for every commit of changes on the
> database
> >> userName text NOT NULL -- Who created
> the application
> >> );
> >>
> >> CREATE TABLE FileVersionHistory (
> >> applicationKey integer REFERENCES Applications
> ON DELETE CASCADE, --
> >> Which application this file is used for
> >> filename text NOT NULL, -- Relative path to the
> file + filename from
> >> Applications::installPath.
> >> content bytea, -- Contents of this file (only
> used if
> >> createFile==true)
> >> contentHash bytea, -- 20 byte hash of content
> (only used if
> >> createFile==true)
> >> patch bytea, -- Patch to get to the current
> version (only used if
> >> createFile==true && if newer versions of this
> file exist which also
> >> have createFile==true)
> >> createFile boolean NOT NULL, -- True to create
> or patch this file.
> >> False to delete it.
> >> modificationDate timestamp NOT NULL DEFAULT
> LOCALTIMESTAMP, -- When
> >> this change occured
> >> lastSentDate timestamp, -- last time this
> change was sent
> >> timesSent integer NOT NULL DEFAULT 0, -- How
> many times this change
> >> was sent
> >> changeSetID integer NOT NULL, -- The change set
> number for when this
> >> operation took place
> >> userName text NOT NULL, -- Who performed this
> operation
> >> CONSTRAINT file_has_data CHECK (
> createFile=FALSE OR ((content IS NOT
> >> NULL) AND (contentHash IS NOT NULL) AND (patch IS
> NOT NULL)) )
> >> );
> >>
> >> -- Insert application
> >> INSERT INTO Applications (applicationName,
> installPath, userName)
> >> VALUES ('Game1', 'C:/', 'Kevin Jenkins');
> >>
> >> -- Insert file
> >> INSERT INTO FileVersionHistory (applicationKey,
> filename, createFile,
> >> changeSetID, userName)
> >> VALUES (
> >> 1,
> >> 'File1',
> >> FALSE,
> >> 0,
> >> 'Kevin Jenkins'
> >> );
> >>
> >>
> >> ---------------------
> >> To unsubscribe go to
> http://gameprogrammer.com/mailinglist.html
> >>
> >>
> >>
> >
> >
> >
> >
> > ---------------------
> > To unsubscribe go to
> http://gameprogrammer.com/mailinglist.html
> >
> >
>
>
>
> --
> Using Opera's revolutionary e-mail client:
> http://www.opera.com/mail/
>
>
> ---------------------
> To unsubscribe go to
> http://gameprogrammer.com/mailinglist.html
>
>
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
---------------------
To unsubscribe go to http://gameprogrammer.com/mailinglist.html
- Follow-Ups:
- [gameprogrammer] Re: SQL question
- From: brian
- References:
- [gameprogrammer] Re: SQL question
- From: brian
Other related posts:
- » [gameprogrammer] SQL question
- » [gameprogrammer] Re: SQL question
- » [gameprogrammer] Re: SQL question
- » [gameprogrammer] Re: SQL question
- » [gameprogrammer] Re: SQL question
- » [gameprogrammer] Re: SQL question
- [gameprogrammer] Re: SQL question
- From: brian
- [gameprogrammer] Re: SQL question
- From: brian