SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)
Hilfe Community Kalender Heutige Beiträge Suchen

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 02.12.2004, 10:25:16
Wauzy Wauzy ist offline
Anfänger
 
Registriert seit: Sep 2002
Beiträge: 84
mySQL date Feld nach Monaten sortieren

Hallo hoffe das die Überschrift halbwegs verständlich ist.

Also ich habe ein mySQL Feld in dem Geburtsdaten aus dem wbb2 Board gespeichert werden, die Daten werden dort als 'date' gespeichert (also nach dem Format YYYY-MM-DD)

Ich hole nun diese Daten mit folgender Abfrage aus der Datenbank.
(Hier genau alle user die in diesem Monat Geburtstag haben)

PHP-Code:
$sql_this="SELECT userid, username, birthday
FROM bb2_users
WHERE birthday
LIKE '%-"
.date("m")."-%'
ORDER BY birthday ASC  LIMIT 0 , 30"

Das klappt natürlich auch alles nur die Sortierung stimmt nicht, ist ja irgentwie auch klar, der sortiert halt von von nach hinten durch und deswegen stehen die mit der geringen Jahreszahl vorne.

Es soll aber so sein, das die in der Reihenfolge des Monats und der Tage sortiert sind. Also die Jahreszahl komplett außeracht. (Haben ja eh jedes Jahr Geburtstag :lol: )

Wäre nett wenn ihr mir helfen könnt, hab im mySQL Manuell etwas über die mySQL Funktion Extract() gefunden, habe aber leider nicht die Syntax hinbekommen.

Gruß
Wauzy
Mit Zitat antworten
  #2  
Alt 02.12.2004, 10:29:41
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
Wenn Du schon als DATE speicherst, dann nimm bitte auch die dafür vorgesehenen Funktionen:
--> http://dev.mysql.com/doc/mysql/en/Da...functions.html
Für Deinen Fall: DATE_FORMAT()

Das einfach mit in die Sortierung packen und alles wird gut.
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #3  
Alt 02.12.2004, 10:42:55
Wauzy Wauzy ist offline
Anfänger
 
Registriert seit: Sep 2002
Beiträge: 84
Entschuldigt die scheuen Pferde hab noch weiter gegoogelt und bin dabei auf einen Ansatz gestoßen den ich noch nicht kannte und der mir geholfen hat.

PHP-Code:
SELECT useridusernamebirthdaySUBSTRINGbb2_users.birthday9) AS tag
FROM bb2_users
WHERE birthday
LIKE 
'%-".date("m")."-%'
ORDER BY tag ASC 
LIMIT 0 
30 
Kannte die SUBSTRING() Funktion für mySQL noch garnicht.

War aber etwas iritierend da die Substring Funktion von mySQL im Gegensatz zu denen von PHP und Perl bei 1 anfängt zu zählen.

Gruß
Mit Zitat antworten
  #4  
Alt 02.12.2004, 10:46:26
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
Ähm... Wieso substring()?? Datumsfunktionen, nicht Stringfunktionen!
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #5  
Alt 02.12.2004, 10:46:59
Wauzy Wauzy ist offline
Anfänger
 
Registriert seit: Sep 2002
Beiträge: 84
Zitat:
Original geschrieben von _c_4_
Wenn Du schon als DATE speicherst, dann nimm bitte auch die dafür vorgesehenen Funktionen:
--> http://dev.mysql.com/doc/mysql/en/Da...functions.html
Für Deinen Fall: DATE_FORMAT()

Das einfach mit in die Sortierung packen und alles wird gut.
Aber wer wird denn gleich so grob sein.

Genau in der Liste die du noch mal gepostet hast habe ich den Extract() Befehl gefunden.MIt dem ich aber nicht zurecht gekommen bin.
Hatte natürlich auch zuerst das Manuell befragt und erst dann deine wertvolle Ziet in Anspruch genommen.
Hatte ich auch dazu geschrieben.

Egal, ist ja gelöst, schönes Wochenende.

Prost
Wauzy
Mit Zitat antworten
  #6  
Alt 02.12.2004, 20:10:51
tapferesschneid tapferesschneid ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 194
Beispiel zur Versöhnung:
Code:
SELECT userid, username, birthday
FROM bb2_users
WHERE MONTH( birthday ) = MONTH( NOW() )
ORDER BY DATE_FORMAT( birthday, "%m%d" )
LIMIT 0, 30
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:26:55 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt