Hi,
bei mir funktioniert es, allerdings sollten die ' (Apostrophe) bei dem
'year(datum)' entfernt werden.
Hatte ich vergessen bei dem geposteten Statement
Gruß,
Richard
Alex
<idioms@freenet. An: RICHARD STRACKE/QVCDE@QVCDE,
"ML MySQL dt.(freenet)"
de> <mysql-de@stripped>
Kopie:
15.01.2004 20:01 Thema: Re: rechnen mit datum
Hi Richard,
ich habe deine beiden vorschläge getestet aber leider funktionieren
beide nicht.
Folgender Vorschlag von Gregor Hermens funktioniert prima
bei deiner Abfrage müsste das Datum gleichzeitig größer und kleiner sein.
Probier mal (ungetestet):
... WHERE `gebdat` >= DATE_SUB('$aktive_user_gebdat', INTERVAL 5 YEAR) AND
`gebdat` <= DATE_ADD('$aktive_user_gebdat', INTERVAL 5 YEAR)
hth
Gruß,
Gregor
Gruesse an alle Helfer ;)
Alex
RICHARD_STRACKE@stripped wrote:
>hi
>
>Wenn du es so wie unten machst, würde ich ein OR statt AND nehmen,
>da:
>
>1982 - 1980 = 2
>1980 - 1982 = -2
>
>2 >= AND -2 <= false
>
>
>
>Da aber MySQL 'and' optimiert hat und 'or' nicht würde ich es eher so
>machen:
>
>
>SELECT name FROM tabelle WHERE 'YEAR(gebdat)' -
>'YEAR($active_user_gebdat)' > -5 AND 'YEAR(gebdat)' -
>'YEAR($active_user_gebdat)' < 5
>
>oder gleich
>
>SELECT name FROM tabelle WHERE 'YEAR(gebdat)' -
>'YEAR($active_user_gebdat)' between -5 AND 5
>
>mit Gruß,
>
>Richard Stracke
>
>
>
>
> Alex
> <idioms@freenet. An: "ML MySQL
dt.(freenet)" <mysql-de@stripped>
> de> Kopie: (Blindkopie:
RICHARD STRACKE/QVCDE)
> Thema: rechnen mit datum
> 15.01.2004 19:20
>
>
>
>
>
>hi liebe liste,
>
>ich habe eine tabelle mit folgenden spalten:
>gebdat --> vom typ DATE --> bsp: 1982-10-06
>name --> typ VARCHAR(255) --> bsp: hugo
>
>ausserdem ist eine variable mit folgendem wert vorhanden:
>$active_user_gebdat = '1980-05-03'
>
>In einer Abfrage möchte ich nun alle user meiner tabelle heraussuchen,
>die maximal +- 5 Jahre von meinem $active_user_gebdat entfernt sind.
>
>Dies versuche ich mit folgender Abfrage:
>SELECT name FROM tabelle WHERE 'YEAR(gebdat)' -
>'YEAR($active_user_gebdat)' >= 5 AND 'YEAR($active_user_gebdat)' -
>'YEAR(gebdat)' <= 5
>
>Wo liegt mein Denkfehler??? Oder ist der Ansatz der falsche.
>
>Danke für Denkanstösse
>Alex
>
>
>--
>Deutsche MySQL Mailingliste
>Listenarchive: http://lists.mysql.com/mysql-de
>Abbestellen (unsubscribe):
>http://lists.mysql.com/mysql-de?unsub=1
>
>
>
>
>
>
>
>
>
>
--
Deutsche MySQL Mailingliste
Listenarchive: http://lists.mysql.com/mysql-de
Abbestellen (unsubscribe):
http://lists.mysql.com/mysql-de?unsub=1
| Thread |
|---|
| • Antwort: Re: rechnen mit datum | RICHARD_STRACKE | 15 Jan |