in reply to Re: sth fetch only grabbing back first result
in thread sth fetch only grabbing back first result

THAT GOT IT TO WORK!!!! THANK YOU!! THANK YOU!! THANK YOU!!

But what exactly was the problem? All the saved timestamps were in the same format of MySQL's NOW().

  • Comment on Re^2: sth fetch only grabbing back first result

Replies are listed 'Best First'.
Re^3: sth fetch only grabbing back first result
by madbombX (Hermit) on Aug 10, 2006 at 19:39 UTC
    The reason it worked is because the way I did it was comparing UNIX_TIMESTAMP() format's as opposed to comparing "2006-08-06" < "2006-08-08". MySQL doesn't do comparison's like this to the best of my knowledge. Hence the reason I translated them both into UNIX_TIMESTAMP() format so it is comparing the number of seconds from epoch until NOW() or until NOW()-INTERVAL, etc.

    To show more aptly.

    mysql> SELECT CURDATE(); +------------+ | CURDATE() | +------------+ | 2006-08-10 | +------------+ 1 row in set (0.01 sec) mysql> SELECT NOW(); +---------------------+ | NOW() | +---------------------+ | 2006-08-10 15:41:19 | +---------------------+ 1 row in set (0.01 sec) mysql> SELECT UNIX_TIMESTAMP(); +------------------+ | UNIX_TIMESTAMP() | +------------------+ | 1155238891 | +------------------+ 1 row in set (0.00 sec)

    This way, when I use the '<' or '>' to compare numbers (such as UNIX_TIMESTAMP()'s), it is consistant. As opposed to comparing CURDATE() and NOW() where one has a time value and one is just a date. That is how I remember things anyway.

    Eric

Re^3: sth fetch only grabbing back first result
by Ieronim (Friar) on Aug 10, 2006 at 19:43 UTC
    Maybe, this happens because NOW() and CURDATE() return date in different formats?

    Try

    my $data = qq(SELECT search, engine, time FROM searches WHERE DATE_SUB +(NOW(),INTERVAL 7 DAY) <= time);
    I cannot test it now, but i think that it will produce the wanted output too.

         s;;Just-me-not-h-Ni-m-P-Ni-lm-I-ar-O-Ni;;tr?IerONim-?HAcker ?d;print