[AccessD] Query Help Needed
John Bodin
jbodin at sbor.com
Fri Mar 13 17:12:49 CDT 2015
Looking at my table, I do not have one single field that will do this. I think I'll just resort to writing a little loop to create a temp table and run the report off of that. Was just trying to avoid that. Will keep your suggestions for down the road. Go out and have a pint and thanks a lot for the effort!
-----Original Message-----
From: AccessD [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee
Sent: Friday, March 13, 2015 6:06 PM
To: Access Developers discussion and problem solving
Subject: Re: [AccessD] Query Help Needed
You need to figure out a field that will let you determine order, then use the query example that I gave you.
HTH
D
On Fri, Mar 13, 2015 at 3:00 PM, John Bodin <jbodin at sbor.com> wrote:
> Yes, using date. Records unfortunately are not chronological so the
> PKID's will not correspond to newer records always. Will keep trying.
> Thanks for the help.
>
> -----Original Message-----
> From: AccessD [mailto:accessd-bounces at databaseadvisors.com] On Behalf
> Of David McAfee
> Sent: Friday, March 13, 2015 5:49 PM
> To: Access Developers discussion and problem solving
> Subject: Re: [AccessD] Query Help Needed
>
> If you're using date, it won't work as both values would be the same.
>
> I usually datestamp everything with NOW() and format the display to
> only show the date.
>
> If the records are entered chronologically, and you are certain that
> people aren't entering older records after newer records, you can use
> the PKiD.
>
> That is of course, if you are using an autonumber PK :)
>
> Assuming your PKID is named PKID:
>
>
> SELECT B.CallNo, B.AssignedDate, B.TechID FROM (SELECT CallNo,
> MIN(PKID) AS MinID FROM tblCallsTechs GROUP BY
> CallNo) AS A
> INNER JOIN tblCallsTechs AS B ON A.MinID= B.PKID;
>
>
> On Fri, Mar 13, 2015 at 2:11 PM, John Bodin <jbodin at sbor.com> wrote:
>
> > Hi David, I am storing the dates using the DATE() and not NOW()
> > functions. I know it is "air code", but I'm a little confused as I
> > tried substituting my actual table/field names in but I got a Syntax
> > Error (missing operator):
> >
> > SELECT B.CallNo, B.DateAssigned, B.Technician (SELECT CallNo,
> > Min(DateAssigned) AS MinDate FROM YourTable GROUP BY
> > CallNo) A <========(on the letter A is where the cursor ends up)
> > INNER JOIN YourTable B ON A.CallNo = B.CallNo And A.MinDate =
> > B.DateAssigned
> >
> > Am I opening my table "tblCallsTechs" up twice in the query grid,
> > assigning the alias of A to one of the tables and B to the other?
> > So my partial query looks like:
> >
> > SELECT B.CallNo, B.AssignedDate, B.TechID FROM tblCallsTechs AS A
> > INNER JOIN tblCallsTechs AS B ON A.CallNo = B.CallNo;
> >
> > The Select within the Select is something I've probably done once or
> > twice in the past, but not sure how to get that to work. Thanks for
> > quick response.
> >
> > John
> >
> > -----Original Message-----
> > From: AccessD [mailto:accessd-bounces at databaseadvisors.com] On
> > Behalf Of David McAfee
> > Sent: Friday, March 13, 2015 4:45 PM
> > To: Access Developers discussion and problem solving
> > Subject: Re: [AccessD] Query Help Needed
> >
> > if the time is stored in the date assigned (using NOW() instead of
> > DATE() ), you can use a min:
> > If you're not storing the time, maybe do a min on the PKID
> >
> > (Warning Air code)
> >
> > SELECT B.CallNo, B.DateAssigned, B.Technician (SELECT CallNo,
> > Min(DateAssigned) AS MinDate FROM YourTable GROUP BY
> > CallNo) A
> > INNER JOIN YourTable B ON A.CallNo = B.CallNo And A.MinDate =
> > B.DateAssigned
> >
> >
> >
> > On Fri, Mar 13, 2015 at 1:37 PM, John Bodin <jbodin at sbor.com> wrote:
> >
> > > Stuck on this reporting scenario. I have service calls that are
> > > assigned to one or more technicians on a particular day. If the
> > > technician(s) cannot fix the problem on that day, he/they may get
> > > assigned again on a following day or another technician may get
> > > assigned. For the particular report, I only want to consider
> > > those technicians that were assigned to the call on the first day
> > > and exclude any other days the call may have been assigned. I'm
> > > trying to avoid writing out to a temp table and can't figure out
> > > the query for the report. Some sample data would be (I sorted by
> > > Call # in below
> > example):
> > >
> > > Call # Date Assigned Technician
> > > 1234 03/01/2015 Jim
> > > 1234 03/01/2015 Tom
> > > 1234 03/03/2015 Jim
> > > 1234 03/03/2015 Steve
> > > 2222 03/01/2015 Bill
> > > 3333 03/02/2015 Mike
> > > 3333 03/04/2015 Ben
> > >
> > > Results of query I would like
> > > 1234 03/01/2015 Jim
> > > 1234 03/01/2015 Tom
> > > 2222 03/01/2015 Bill
> > > 3333 03/02/2015 Mike
> > >
> > > Thoughts? Thx.
> > >
> > > John
> > >
> > >
> > > --
> > > AccessD mailing list
> > > AccessD at databaseadvisors.com
> > > http://databaseadvisors.com/mailman/listinfo/accessd
> > > Website: http://www.databaseadvisors.com
> > >
> > --
> > AccessD mailing list
> > AccessD at databaseadvisors.com
> > http://databaseadvisors.com/mailman/listinfo/accessd
> > Website: http://www.databaseadvisors.com
> >
> > --
> > AccessD mailing list
> > AccessD at databaseadvisors.com
> > http://databaseadvisors.com/mailman/listinfo/accessd
> > Website: http://www.databaseadvisors.com
> >
> --
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com
>
> --
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com
>
--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com
More information about the AccessD
mailing list