Autor Zpráva
Igor
Profil *
Dejme tomu, že mám dvě tabulky "ovoce" a "popis", které jsou navzájem propojené. Udělal jsem si několik příkazů na výběr jednoho záznamu (kde id je např. největší, nejmenší, předchozí, další, apod.) Všechny příkazy mi fungují, až na výběr záznamu s nejvyšší hodnotou id.

Zkoušel jsem příkaz SELECT MAX

SELECT a.`id`,a.`kus`,a.`vaha`,b.`puvod` FROM ovoce AS a,popis AS b   WHERE   a.`id`=(select MAX(a.`id`)) AND  a.`id` = b.`ovoce_id`  ORDER BY id ASC   LIMIT 0,1 


Vrací příkaz s nejmenší hodnotou, místo největší. Příkaz sestavuji metodou v php a použití je tudíž omezené. Podmínka na výběr by měla být v části kde začíná WHERE, ne v části kde se píše SELECT sloupce FROM tabulka
Tori
Profil
A nestačí seřadit sestupně podle toho sloupec + LIMIT 1? (= bez té první poloviny where)
Igor
Profil *
Tori:
Přestože, jsem DESC už jednou použil tak to mě nenapadlo. Díky. Teď už to všechno funguje :-).
Leo
Profil
Tori:
A nestačí seřadit sestupně podle toho sloupec + LIMIT 1? (= bez té první poloviny where)

Pokud se hodnoty id v tabulce neopakují (jsou unikátní) pak ano.
Igor
Profil *
Leo:
To id je jedinečné. A jinak kdyby nešlo o id, ale třeba o cenu, tak jak by si to udělal? Jen ze zvědavosti.
Kajman_
Profil *
Igor:
A jinak kdyby nešlo o id, ale třeba o cenu, tak jak by si to udělal?

Ukázka je ve faq.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0