dbTalk Databases Forums  

query help

comp.databases.ms-access comp.databases.ms-access


Discuss query help in the comp.databases.ms-access forum.



Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old   
Brian
 
Posts: n/a

Default query help - 01-02-2008 , 09:48 AM






I am trying to make a query and I am stuck. There probably is a
simple solution to this so hopefully one of you can help. Here is
what I want to do:

I have a table that has 2 fields (Test Type and Date Performed). The
table is populated with 6 or 7 different test types and the date each
was performed. Each test type will be performed a bunch of times so
there will be more than one entry for each type. What I want to do is
count the number of tests for a certain test type performed before a
specified date and count the ones performed after that date. Is there
an easy way to do this?

Thanks.

Reply With Quote
  #2  
Old   
Fred Zuckerman
 
Posts: n/a

Default Re: query help - 01-02-2008 , 10:14 AM






"Brian" <Brian.Kibler (AT) gmail (DOT) com> wrote

Quote:
I am trying to make a query and I am stuck. There probably is a
simple solution to this so hopefully one of you can help. Here is
what I want to do:

I have a table that has 2 fields (Test Type and Date Performed). The
table is populated with 6 or 7 different test types and the date each
was performed. Each test type will be performed a bunch of times so
there will be more than one entry for each type. What I want to do is
count the number of tests for a certain test type performed before a
specified date and count the ones performed after that date. Is there
an easy way to do this?
Thanks.
Try this:

PARAMETERS Mdate DateTime;
TRANSFORM Count(tblTests.[test type]) AS TestCount
SELECT tblTests.[test type]
FROM tblTests
GROUP BY tblTests.[test type]
PIVOT IIf([date performed]<=[Mdate],"Before " & [Mdate],"After " & [Mdate]);

Fred Zuckerman




Reply With Quote
  #3  
Old   
Keith Wilby
 
Posts: n/a

Default Re: query help - 01-02-2008 , 10:16 AM



"Brian" <Brian.Kibler (AT) gmail (DOT) com> wrote

Quote:
I am trying to make a query and I am stuck. There probably is a
simple solution to this so hopefully one of you can help. Here is
what I want to do:

I have a table that has 2 fields (Test Type and Date Performed). The
table is populated with 6 or 7 different test types and the date each
was performed. Each test type will be performed a bunch of times so
there will be more than one entry for each type. What I want to do is
count the number of tests for a certain test type performed before a
specified date and count the ones performed after that date. Is there
an easy way to do this?

Thanks.
Do this with queries. Off the top of my head:

Open a query in design view and include your table. Include the two fields
on the grid along with your table's Primary Key. Click on the "totals"
toolbar item, set the Primary Key field to "Count", [Test Type] to "Group
By" and [Date Performed] to "Where". In the criteria for [Date Performed]
type (for example) <#01/01/2008# to show tests before the date. Use another
query with ">" in the date field criteria for tests after the date.

Untested but I think it should work.

Keith.
www.keithwilby.com



Reply With Quote
  #4  
Old   
Baz
 
Posts: n/a

Default Re: query help - 01-02-2008 , 10:27 AM



SELECT
Iif([Date Performed] >= [Enter a Date], "On or After", "Before") As
BeforeAfter,
Count(*) As TestCount
FROM
MyTable
WHERE
[Test Type] = [Enter a Test Type]
GROUP BY
Iif([Date Performed] >= [Enter a Date], "On or After", "Before")

If you are unfamiliar with SQL, proceed as follows:

Start a new query in the query designer.
Click the "SQL" button on the toolbar, or select it from the View menu.
Paste the above code into the SQL window, being sure to replace the
"SELECT;" text that Access fills in automatically.
Replace "MyTable" with the actual name of your table.
Change back to the Design view (again from the toolbar or view menu), so you
can study the graphical representation of the query.

You may need to modify the last line above depending on how you want to
treat tests that were *on* the date you specify.

"Brian" <Brian.Kibler (AT) gmail (DOT) com> wrote

Quote:
I am trying to make a query and I am stuck. There probably is a
simple solution to this so hopefully one of you can help. Here is
what I want to do:

I have a table that has 2 fields (Test Type and Date Performed). The
table is populated with 6 or 7 different test types and the date each
was performed. Each test type will be performed a bunch of times so
there will be more than one entry for each type. What I want to do is
count the number of tests for a certain test type performed before a
specified date and count the ones performed after that date. Is there
an easy way to do this?

Thanks.



Reply With Quote
  #5  
Old   
Bob Quintal
 
Posts: n/a

Default Re: query help - 01-03-2008 , 09:39 AM



"Fred Zuckerman" <ZuckermanF (AT) sbcglobal (DOT) net> wrote in
news:kH6fj.82183$Um6.46166 (AT) newssvr12 (DOT) news.prodigy.net:

Quote:
"Brian" <Brian.Kibler (AT) gmail (DOT) com> wrote in message
news:c86d49c7-3399-4d4a-afe4-e5c39a24c4f4
@i12g2000prf.googlegroups.
com...
Fred, I tried yours and it worked so thanks for the help. I just
have one issue with it. How can I make it fill in a zero if
there are no tests of a certain type before/after the desired
date? Right now it just gives a blank field.

Unfortunately I do not know how to do that. If you use the query
in a form or report, then you can use the Nz() function to display
zeros. Fred Zuckerman


The Nz() function should work in the query. Try
TRANSFORM Nz(Count(tblTests.[test type]),0) AS TestCount

--
Bob Quintal

PA is y I've altered my email address.

--
Posted via a free Usenet account from http://www.teranews.com



Reply With Quote
  #6  
Old   
Brian
 
Posts: n/a

Default Re: query help - 01-03-2008 , 09:43 AM



Fred, I tried yours and it worked so thanks for the help. I just have
one issue with it. How can I make it fill in a zero if there are no
tests of a certain type before/after the desired date? Right now it
just gives a blank field.

Reply With Quote
  #7  
Old   
Fred Zuckerman
 
Posts: n/a

Default Re: query help - 01-03-2008 , 09:55 AM



"Brian" <Brian.Kibler (AT) gmail (DOT) com> wrote

Quote:
Fred, I tried yours and it worked so thanks for the help. I just have
one issue with it. How can I make it fill in a zero if there are no
tests of a certain type before/after the desired date? Right now it
just gives a blank field.
Unfortunately I do not know how to do that. If you use the query in a form
or report, then you can use the Nz() function to display zeros.
Fred Zuckerman




Reply With Quote
  #8  
Old   
Fred Zuckerman
 
Posts: n/a

Default Re: query help - 01-03-2008 , 10:37 AM



"Bob Quintal" <rquintal (AT) sPAmpatico (DOT) ca> wrote

Quote:
"Fred Zuckerman" <ZuckermanF (AT) sbcglobal (DOT) net> wrote in
news:kH6fj.82183$Um6.46166 (AT) newssvr12 (DOT) news.prodigy.net:

"Brian" <Brian.Kibler (AT) gmail (DOT) com> wrote in message
news:c86d49c7-3399-4d4a-afe4-e5c39a24c4f4
@i12g2000prf.googlegroups.
com...
Fred, I tried yours and it worked so thanks for the help. I just
have one issue with it. How can I make it fill in a zero if
there are no tests of a certain type before/after the desired
date? Right now it just gives a blank field.

Unfortunately I do not know how to do that. If you use the query
in a form or report, then you can use the Nz() function to display
zeros. Fred Zuckerman


The Nz() function should work in the query. Try
TRANSFORM Nz(Count(tblTests.[test type]),0) AS TestCount

--
Bob Quintal

PA is y I've altered my email address.

--
Posted via a free Usenet account from http://www.teranews.com

Cool.
Tks Bob.
I thought I had tried that before.
Fred




Reply With Quote
Reply




Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.