Article View: borland.public.interbase.sql
Article #494Re: group by cast datetime as integer?
From: bart.smissaert
Date: Wed, 19 Dec 2007 08:59
Date: Wed, 19 Dec 2007 08:59
86 lines
4162 bytes
4162 bytes
On 19 Dec, 07:35, "Martijn Tonies" <m.ton...@upscene.removethis.com> wrote: > > But I thought that would give me multiple rows for the same day. Have run > it > > and this happens indeed. > > Maybe I am missing something here. > > Are the F2 values different? > > -- > Martijn Tonies > Database Workbench - tool for InterBase, Firebird, MySQL, NexusDB, Oracle & > MS SQL Server > Upscene Productionshttp://www.upscene.com > My thoughts:http://blog.upscene.com/martijn/ > Database development questions? Check the forum!http://www.databasedevelopmentforum.com > > > > > RBS > > > "Martijn Tonies" <m.ton...@upscene.removethis.com> wrote in message > >news:47683fec$1@newsgroups.borland.com... > > >> Trying to solve the following problem. > > >> I have quite a large table with 2 fields, a unique field with integer > > >> number, call this F1 and > > >> a field with datetime values, call this F2. > > >> Both fields will appear in ascending order when you do a select. > > >> F1 is indexed, but F2 is not. > > > >> To show a small sample: > > > >> F1 F2 > > >> -------------------------------------- > > >> 10303521 01/04/2006 19:50 > > >> 10303525 01/04/2006 19:50 > > >> 10303529 01/04/2006 19:50 > > >> 10303535 01/04/2006 19:51 > > >> 10303536 02/04/2006 07:43 <<< > > >> 10303540 02/04/2006 07:43 > > >> 10303541 02/04/2006 07:43 > > >> 10303546 02/04/2006 07:43 > > > >> Now what I need to do is fetch all the rows that are the first row for > > >> the > > >> particular day, so > > >> in the above example I need the row indicated with <<< > > > >> Now maybe I could do this with a GROUP BY and CAST(F2 AS INTEGER) but I > > >> can't work it out. > > > > Why the CAST? Why not simply the GROUP BY on F2? > > > > SELECT MIN(F1), F2 > > > FROM ... > > > GROUP BY F2 > > > > Given that the date and time is the same in F2 > > > >> Any suggestions how to tackle this? As this is a large table (over 20 > > >> million rows) and as F2 is not > > >> indexed maybe this will too slow in SQL and maybe I need an algorithm > for > > >> this in my application. > > > >> RBS > > > > -- > > > Martijn Tonies > > > Database Workbench - tool for InterBase, Firebird, MySQL, NexusDB, > Oracle > > > & > > > MS SQL Server > > > Upscene Productions > > >http://www.upscene.com > > > My thoughts: > > >http://blog.upscene.com/martijn/ > > > Database development questions? Check the forum! > > >http://www.databasedevelopmentforum.com Yes, they are, as in the posted sample. I have solved this now by a binary chop and search coded in my app. This is very fast and as F2 is not indexed I don't think I can improve on that with a pure SQL solution. RBS
Technical Details
Message-ID:
<1a4a964e-4084-4975-b939-6b3e0205072f@s8g2000prg.googlegroups.com>Path:
arc1-ca.pugleaf.net!g2news1.google.com!postnews.google.com!s8g2000prg.googlegroups.com!not-for-mailReferences:
<47682ff6$1@newsgroups.borland.com> <47683fec$1@newsgroups.borland.com> <47684b6d$1@newsgroups.borland.com> <4768c98c@newsgroups.borland.com>Show Full Headers
Complete Article Headers
X-Google-Thread: 114a0e,87b0fc212a58b6a9 X-Google-Attributes: gid114a0e,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: arc1-ca.pugleaf.net!g2news1.google.com!postnews.google.com!s8g2000prg.googlegroups.com!not-for-mail From: "bart.smissaert@gmail.com" <bart.smissaert@gmail.com> Newsgroups: borland.public.interbase.sql Subject: Re: group by cast datetime as integer? Date: Wed, 19 Dec 2007 00:59:25 -0800 (PST) Organization: http://groups.google.com Lines: 86 Message-ID: <1a4a964e-4084-4975-b939-6b3e0205072f@s8g2000prg.googlegroups.com> References: <47682ff6$1@newsgroups.borland.com> <47683fec$1@newsgroups.borland.com> <47684b6d$1@newsgroups.borland.com> <4768c98c@newsgroups.borland.com> NNTP-Posting-Host: 194.176.105.35 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Trace: posting.google.com 1198054766 30831 127.0.0.1 (19 Dec 2007 08:59:26 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Wed, 19 Dec 2007 08:59:26 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: s8g2000prg.googlegroups.com; posting-host=194.176.105.35; posting-account=yqQcfwoAAACwDLMmL9f-8m6RojZkZ8BS User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-GB; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11,gzip(gfe),gzip(gfe) X-HTTP-Via: 1.1 n3-ld-cache-inetgw-60