sagen läßtwie nächsten max (id) in einer Tabelle finden
Mein Tisch
Id Status
1 0
2 1
3 0
4 0
5 1
6 0
enthält Ich brauche eine Ausgabe wie
Id Status
5 1
I wie Max (id) versucht, aber es gibt Ausgabe als
sagen läßtwie nächsten max (id) in einer Tabelle finden
Mein Tisch
Id Status
1 0
2 1
3 0
4 0
5 1
6 0
enthält Ich brauche eine Ausgabe wie
Id Status
5 1
I wie Max (id) versucht, aber es gibt Ausgabe als
Versuchen Sie dies:
SELECT id, status
FROM myTable ORDER BY `id` DESC LIMIT 1 , 1
Ich habe angenommen, dass Sie sich für die zweithöchste Id
Rekordwerte suchen.
Ich denke, Sie möchten die maximale (ID) wo Status = 1?
Dann nutzen select max(id) from table where Status=1
Ich kann nur annehmen, dass Sie über die maximale id dieser Einträge wissen wollen, mit Status = 1, nicht wahr? Dann nutzen
select max(id) from mytable where Status=1
Da Sie das absolute Maximum aus beiden Spalten erhalten möchten verwenden:
SELECT GREATEST(MAX(id), MAX(status));
dieses Versuchen Sie auch
select Id,Status
from table
where Id=(
select MAX(Id) from table where Id <> (select MAX(Id) from table)
)
Ihre Frage ist ein wenig unklar, was es Sie wirklich wollen. Von Ihrem Beispiel, ich denke, Sie möchten die maximale ID für den maximalen Status.
Dies ist der max-ID für jeden Status:
select max(id), status from table
group by status;
Der in 5,1 und 6,0 ergeben.
Sie könnten dann herausfiltern, was Sie nicht benötigen, z.
select * from (
select max(id), status from t
group by status
) maxidperstatus
where maxidperstatus.status = (select max(status) from t);
Ich gehe davon aus, dass Sie die Id wollen, wo der Status der größte dieses ist Versuchen
select max(status),id from table group by id order by max(status) DESC
Was die Auswahlkriterien sind? – Strawberry
Also ... Sie wollen MAX (Status). Nein? – Chris
Ich brauche nicht MAX (Status) und alle ... –