Re: logic problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Still doesn't work the way I want it.  My boss is taking a look at it, she 
knows SQL really well, I was trying to do this without her assistance, but 
its just harder then I was expecting.  thanks for the help tho

On Wed, 21 Apr 2004, Daniel Clark wrote:

> How about
> 
> SELECT distinct badge.id, convert( varchar,eventime,110) as date
> 
> Shows all the badge numbers IN on that date.   If the badge number is not
> there, they didn't check in at ALL that day.
> 
> 
> > This seems too easy to not be able to do it with SQL. There must be
> > something we're missing in the query.
> > Try this:
> >
> > select distinct badge.id,convert( varchar,eventime,110) as date,count(*)
> > from events, badge where
> > events.cardnum = badge.id and devid = '1' and
> > convert( varchar, events.eventime, 110) BETWEEN '$startdate' and
> > 'enddate'
> > and type = '1'
> > group by date
> >
> > In MySQL you don't need to specify a field for count(). And you should
> > have to convert the eventime field twice, you should be able to
> > reference the calc field in the group by.
> >
> > On Apr 21, 2004, at 2:19 PM, Adam Williams wrote:
> >
> >> Yeah I basically had that with my previous SQL statement, I was
> >> grouping
> >> by event.cardnum instead of counting the cardnums by date.  I think
> >> what
> >> I'm trying to do is beyond the scope of SQL and I'll have to write some
> >> PHP to take the SQL statement results and feed them into an array and
> >> count the distinct cardnums for each date and then spit it all into an
> >> html table.  thanks
> >>
> >> On Wed, 21 Apr 2004, Daniel
> >> Clark wrote:
> >>
> >>> AND: any count >=1 shows they came in that day.
> >>>
> >>> How about:
> >>>
> >>> SELECT convert( varchar,eventime,110) as date from events, badge,
> >>>    count(convert( varchar,eventime, 110)) as count
> >>> WHERE events.cardnum = badge.id and devid = '1' and
> >>>    convert( varchar, events.eventime, 110) BETWEEN '$startdate' and
> >>> 'enddate'
> >>> AND type = '1'
> >>> GROUP BY convert( varchar,events.eventime, 110), badge
> >>>
> >>>
> >>>> I'm using some proprietary software/hardware where when a visitor
> >>>> swipes
> >>>> their entry card, it is recorded in a mssql 2000 server.  My boss
> >>>> wants a
> >>>> count of unique vistors for a range of dates.  So, I need to have it
> >>>> give
> >>>> a count of unique vistors, meaning that I need to count all vists
> >>>> for a
> >>>> day as one visit (because if they go outside to smoke and come back
> >>>> and
> >>>> swipe their card again to get in, each one is a separate visit, but
> >>>> i need
> >>>> to count all visits by each person as one visit since i just want to
> >>>> know
> >>>> if they came at all each day, not how many times they came in).
> >>>>
> >>>> This is my SQL statement:
> >>>>
> >>>> select distinct count(convert( varchar,eventime, 110)) as count,
> >>>> convert( varchar,eventime,110) as date from events, badge wher
> >>>> events.cardnum = badge.id and devid = '1' and
> >>>> convert( varchar, events.eventime, 110) BETWEEN '$startdate' and
> >>>> 'enddate'
> >>>> and type = '1' group by convert( varchar,events.eventime, 110)
> >>>>
> >>>> for reference, devid = '1' is the hardware device, where everytime it
> >>>> triggers, it means someone swiped their card to get in, and type =
> >>>> '1'
> >>>> means patron (because we have a type = 2 that is for staff and we
> >>>> jsut
> >>>> want to know how many patrons visited)
> >>>>
> >>>> When I execute this statement, its returning the result for each
> >>>> date of
> >>>> the total number of card swipes (so if a person comes in twice on a
> >>>> date,
> >>>> its recording it as 2 swipes, but I just need to know that they came
> >>>> to
> >>>> the building at all on this date, so I just need it to register that
> >>>> there
> >>>> was a count of atleast one for this card that was swiped)
> >>>>
> >>>> any suggestions?  thanks
> 
> 

-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [Postgresql Discussion]     [Kernel Newbies]     [Postgresql]     [Yosemite News]

  Powered by Linux