Freelancers Network
 
skill list top cap
Homepage
Join the Freelancer's Network
Update your details
Find a freelancer
Post a project
Find a project
Projects Archive
Post a job
Find a job
Jobs Archive
See Dan's Pages
See Andy's Pages
Link to this site
Resources
Join/Leave Forum
Forum Messages
+Additions+ Adverts
Advertising
Contact Us
Subscribe to our newsletter - enter your email address and hit return
Freelancers.net is owned and operated by Andy Stowell and Dan Winchester
skill list end cap
guru web hostcom

Find me again on Freelancers.net

RE: FN-FORUM: SQL / programming Q

date posted 3rd October 2006 19:16

Paul Cooper wrote:
> Hi
>
> I'm a bit lost on how to approach a page. I want to display a list
> of surveys that will be taken and alongside each survey I want to
> show how many of the (invited) users have completed the survey. So
> it would be a list like:
>
> Group / Survey Name (4 completed, 38 pending)
>
> Etc.
>
> I store the surveys in tblGroups and the list of invited users in
> tblResults. A field in the latter called SubmittedDate stores the
> date a user completed the survey, so if this is blank I know they
> still haven't taken the survey.

When you say blank, do you mean NULL?

> This is the data structure:
>
> tblGroups
> GroupID
> GroupName
>
> tblResults
> GroupID (FK to above)
> ClientID (stores the invited user)
> SubmittedDate

If it is NULL and assuming a sensible database then something like

SELECT g.GroupID,g.GroupName,count(r.ClientID) AS
NumTotal,count(r.SubmittedDate) AS NumComplete FROM tblGroups as g INNER
JOIN tblResults as r ON g.GroupID = r.GroupID GROUP BY g.GroupID,g.GroupName
ORDER BY g.GroupName

Should work, then just subtract complete from total to get pending. This
should work because count(field) does not include records where the field is
NULL.

If the field is not NULL then I would suggest changing so it is, otherwise I
believe it will need two queries, or a single query and then a loop in your
code to calculate the completed and pending.

HTH,

Dai



Messages by Day
October 31st 2006
October 30th 2006
October 29th 2006
October 28th 2006
October 27th 2006
October 26th 2006
October 25th 2006
October 24th 2006
October 23rd 2006
October 22nd 2006
October 21st 2006
October 20th 2006
October 19th 2006
October 18th 2006
October 17th 2006
October 16th 2006
October 15th 2006
October 14th 2006
October 13th 2006
October 12th 2006
October 11th 2006
October 10th 2006
October 9th 2006
October 8th 2006
October 7th 2006
October 6th 2006
October 5th 2006
October 4th 2006
October 3rd 2006
October 2nd 2006
October 1st 2006


Messages by Month
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006


Messages by Year
2008
2007
2006
2005
2004
2003
2002
2001
2000