WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 14.08.2006, 10:06   #1
harry1983
WoW Rückkehrer
 
Registriert seit: 28.01.2004
Ort: Wien
Alter: 42
Beiträge: 1.739

Mein Computer

harry1983 eine Nachricht über Skype™ schicken
Standard Abfrageproblem mit MYSQL

Hi Leute

Stehe wieder einmal vor einem kleinen Problem.
Folgende Datenbank:
Es wird ein Datum generiert (das aktuelle vom Tag) und es werden zu diesem Datum veschiedene Sachen eingetragen.
Soweit so gut.
Jetzt brauche ich aber für die Abfrage nur die Daten des aktuellsten und letzten Datums.
Also zum Beispiel von gestern.

Die Frage:
Wie kann ich hier am Besten die Abfrage starten?
Gibts nen Befehl mit dem ich sagen kann such dir das neueste Datum raus?
harry1983 ist offline   Mit Zitat antworten
Alt 14.08.2006, 11:55   #2
harry1983
WoW Rückkehrer
 
Registriert seit: 28.01.2004
Ort: Wien
Alter: 42
Beiträge: 1.739

Mein Computer

harry1983 eine Nachricht über Skype™ schicken
Standard

Weiss keiner Rat?
harry1983 ist offline   Mit Zitat antworten
Alt 14.08.2006, 12:00   #3
opa12
Hero
 
Registriert seit: 07.10.2002
Beiträge: 872


Standard

Ich kenne MYSQL nicht wirklich.
Aber unter Oracle würde ich es so abfragen.

select * from tabelle where datum = (select max(datum) from tabelle)
opa12 ist offline   Mit Zitat antworten
Alt 14.08.2006, 12:29   #4
harry1983
WoW Rückkehrer
 
Registriert seit: 28.01.2004
Ort: Wien
Alter: 42
Beiträge: 1.739

Mein Computer

harry1983 eine Nachricht über Skype™ schicken
Standard

Wenns jetzt sowas auch für MYSQL gibt wäre ich happy
harry1983 ist offline   Mit Zitat antworten
Alt 14.08.2006, 12:54   #5
harry1983
WoW Rückkehrer
 
Registriert seit: 28.01.2004
Ort: Wien
Alter: 42
Beiträge: 1.739

Mein Computer

harry1983 eine Nachricht über Skype™ schicken
Standard

PHP-Code:
$sql="SELECT * FROM gildenrang where '".$datum.'" = ("SELECT max('".$datum."from gildenrang")"
Das hab ich derzeit.
Bekomm aber einen Parse Error:
Parse error: parse error, unexpected T_STRING in /var/www/virtual/diepostler.at/htdocs/rangauslesen.php on line 27

Ich glaub das mitn max haut ned so hin.
harry1983 ist offline   Mit Zitat antworten
Alt 14.08.2006, 13:23   #6
Farkarich
Senior Member
 
Registriert seit: 19.09.2000
Alter: 40
Beiträge: 122


Farkarich eine Nachricht über ICQ schicken
Standard KEIN MYSQL Fehler

HI!!

Ein Pars Error ist kein MySQL Fehler du hast beim zusammenbauen vom String einiges falsch gemacht!

Und ich glaub das Statement war auch noch Falsch, wozu brauchst du das 2. mal From???

Deiner:

$sql="SELECT * FROM gildenrang where '".$datum.'" = ("SELECT max('".$datum."') from gildenrang")";


Meiner:

$sql="SELECT * FROM gildenrang where '".$datum.'" = ("SELECT max('".$datum."') )";
Farkarich ist offline   Mit Zitat antworten
Alt 14.08.2006, 13:24   #7
harry1983
WoW Rückkehrer
 
Registriert seit: 28.01.2004
Ort: Wien
Alter: 42
Beiträge: 1.739

Mein Computer

harry1983 eine Nachricht über Skype™ schicken
Standard

So ich habs jetzt derzeit mit UPDATE gelöst.
Aber eine andere Lösung wär doch praktisch.
harry1983 ist offline   Mit Zitat antworten
Alt 15.08.2006, 23:05   #8
delphirocks
bitte Mailadresse prüfen!
 
Registriert seit: 17.03.2002
Beiträge: 198


Standard

>>$sql="SELECT * FROM gildenrang where '".$datum.'" = ("SELECT max('".$datum."') from gildenrang")";<<

Was soll in der $datum Variable drinstehen?

Probier mal
$sql="select * from gildenrang where datum=(select max(datum) from gildenrang)";

Ich denke, das du an dieser Stelle keine Variable haben willst.
delphirocks ist offline   Mit Zitat antworten
Alt 16.08.2006, 08:25   #9
iG0r
Gesperrt
 
Registriert seit: 14.08.2003
Alter: 47
Beiträge: 915


Standard

bin nicht ganz sicher ob ich die problematik hier vollständig verstanden habe. mein lösungsvorschlag...

PHP-Code:
$gestern mktime(000date("m"), date("d")-1date("Y"));
    
$sql "SELECT * FROM gildenrang WHERE datum > $gestern"
iG0r ist offline   Mit Zitat antworten
Alt 17.08.2006, 12:02   #10
harry1983
WoW Rückkehrer
 
Registriert seit: 28.01.2004
Ort: Wien
Alter: 42
Beiträge: 1.739

Mein Computer

harry1983 eine Nachricht über Skype™ schicken
Standard

Zitat:
Original geschrieben von delphirocks
>>$sql="SELECT * FROM gildenrang where '".$datum.'" = ("SELECT max('".$datum."') from gildenrang")";<<

Was soll in der $datum Variable drinstehen?

Probier mal
$sql="select * from gildenrang where datum=(select max(datum) from gildenrang)";

Ich denke, das du an dieser Stelle keine Variable haben willst.
So hab ichs auch schon probiert, bekomme aber auch nur einen Parse Error.

Naja das Problem ist das das Datum nicht immer von gestern ist, sondern auch mehrmals vom selben Tag. Das heisst diese Lösung fällt schonmal weg ^^
harry1983 ist offline   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 an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:56 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag