List:German« Previous MessageNext Message »
From:Alex Date:January 15 2004 8:01pm
Subject:Re: rechnen mit datum
View as plain text  
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
>
>
>
>
>
>
>
>
>  
>


Thread
rechnen mit datumAlex15 Jan
re: rechnen mit datumRICHARD_STRACKE15 Jan
  • Re: rechnen mit datumAlex15 Jan