SpookiePower wrote:
> Jeg vil gerne sammenligne antallet af indlæg
> i min database fra 01.01.2008 til dagsdato(01.03.2008),
> med indlæg fra sidste år, i samme periode.
> Mit problem er indlægene i 2007.
>
> Min ide til en kode, ser således ud, men den virker
> naturligvis ikke -
>
> SELECT *
> FROM TReport
> WHERE Date BETWEEN '01-01-2007' AND 'DagsDato-2007'
>
>
> Jeg har dog et problem med datoen. Datoen i mit felt
> ser således ud "03-01-2008 06:20:00"
> Jeg forestiller mig at jeg skal trække datoen "03-01"
> ud af datofeltet og sætte den ind på "DagsDato" i min
> SQL sætning, men med funktionerne datevalue og date
> får jeg hevet 03-01-2008 ud. Hvordan slipper jeg
> for årstallet - hvis det altså er den rigtige måde
> at gøre det på ?
>
> Hvad gør jeg her ?
>
>
> --
> My Photo Gallery
>
www.anothermasterpiece.com
Du kan prøve
WHERE date(now() - interval 1 year) < date_row
Så det man vil det se ud som:
WHERE 03-01-2007 06:20:00 < 03-01-2008 06:20:00 (såfremt man lige
sammenligner med datoen lige nu)
Dog nok ikke helt det du leder efter, så...
WHERE date(CONCAT(YEAR(NOW()),'-01-01 00:00:00')) < date(date_row)
Skulle vist give dig det du vil have.
mysql> select date(CONCAT(YEAR(NOW()),'-01-01 00:00:00'));
+---------------------------------------------+
| date(CONCAT(YEAR(NOW()),'-01-01 00:00:00')) |
+---------------------------------------------+
| 2008-01-01 |
+---------------------------------------------+
1 row in set (0.00 sec)
select CONCAT(YEAR(NOW()),'-01-01 00:00:00');
+---------------------------------------+
| CONCAT(YEAR(NOW()),'-01-01 00:00:00') |
+---------------------------------------+
| 2008-01-01 00:00:00 |
+---------------------------------------+
1 row in set (0.00 sec)