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
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren |
20.09.2003, 18:59:42
|
Anfänger
|
|
Registriert seit: May 2002
Alter: 38
Beiträge: 125
|
|
letzten eintrag auswählen
hiho @ll!
ich bins (schon) wieder.
kleine frage: gibts einen befehl mit dem man den letzten eintrag einer tabelle auswählen kann, sprich den mit der größten id-zahl (bzw. primärschlüssel)? oder muss ich mir den durch kombination mit anderen befehlen selbst auswählen?
wie lauten diese befehle?
danke,
party mit sahne
|
20.09.2003, 19:01:34
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
Einfach so:
Code:
SELECT MAX(id) AS max_id FROM tabelle LIMIT 1,1;
Ansprechbar ist der Wert dann mit max_id
|
20.09.2003, 19:10:42
|
Member
|
|
Registriert seit: Oct 2002
Ort: ch
Beiträge: 822
|
|
eine andere möglichkeit wäre natürlich:
SELECT * FROM tabelle ORDER BY id DESC LIMIT 1
|
20.09.2003, 19:28:24
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
Stimmt, aber ich glaube Deine Variante hat einen entscheidenden Performancenachteil.
Der folgende Part ist nicht garantiert!
a) Bei MAX(id) sagst Du mySQL, dass er nur ein Feld rausholen soll - das mit der größten ID.
b) Bei LIMIT 1,1 sagst Du mySQL, dass er von allen gefundenen Datensätzen nur einen nehmen soll.
Während also bei a) immer nur ein DS gefunden wird, werden bei b) intern alle Hunderte, Tausende oder wie viele auch immer DS rausgesucht und nur einer weitergegeben.
Vielleicht optimiert mySQL den Query aber auch intern, so dass dieser Fall abgefangen wird.
|
21.09.2003, 00:03:23
|
Member
|
|
Registriert seit: Oct 2002
Ort: ch
Beiträge: 822
|
|
Gut möglich, ich werde das mal, wenn ich zeit habe testen. Und... hab da zum Limit gleich eine Frage, wieso gibst du 1,1 ein? kann man nicht einfach LIMIT 1 angeben? Ich hab mal was gelesen, hab's aber wieder vergessen, wofür die zweite zahl ist.
|
21.09.2003, 07:11:18
|
|
Achtung, neuer - besserer - Nick! ;)
LIMIT 5,20 heißt, dass man ab dem sechsten(!) gefundenen DS die nächsten 20 DS haben will. Die 5 ist also der Start und die 20 die Zahl DS.
Somit war mein Beispiel mit LIMIT 1,1 sogar falsch, da die DS auch bei Null beginnenend durch nummeriert werden.
Dein LIMIT 1 entspricht also LIMIT 0,1
--> http://www.mysql.com/doc/en/SELECT.html
|
21.09.2003, 07:45:34
|
Member
|
|
Registriert seit: Oct 2002
Ort: ch
Beiträge: 822
|
|
Danke dir! hatte das bis anhin immer mit mysql_data_seek() gemacht, was mit dem limit viel besser ginge. Nunja, jetz bin ich schlauer =)
|
21.09.2003, 07:55:10
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
Übrigens: mysql_insert_id($verbindung) könnte auch interessant sein. Das Ding gibt Dir den Wert des letzten auto_increments zurück.
Verdammt, wieso schon wieder dieser Nick...??
|
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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 04:05:42 Uhr.
|