Update rekordu z najwyzszym id

0

Staram sie zmienic wartosc pola "miejscowosc" dla wiersza o najwyzszym id w tablicy klienci.

UPDATE klienci SET miejscowosc = "adsdsds" WHERE (SELECT MAX(idklienta))

jednak nie jest zmieniany jeden wiersz, a wszytkie w tablicy. Gdzie robie blad?

1

Przypuśćmy, że to Twoje SELECT MAX(idklienta) zwróciło 80, wtedy masz takie zapytanie:
UPDATE klienci SET miejscowosc = "adsdsds" WHERE 80
Chyba już widzisz problem :P

1

W MySQL możesz również użyć LIMIT przy UPDATE. Czyli cos w ten deseń:

UPDATE klienci SET miejscowosc='adsdsds' ORDER BY id LIMIT 1

Ale to nie jest to samo co powyżej, bo tu będzie updejtowany dokładnie jeden rekord...

0

Raczej tak powinno być:
Where idklienta = ( select max(idklienta))

1 użytkowników online, w tym zalogowanych: 0, gości: 1