Jak inkrementować lub dekrementować wartość mysql w jednym zapytaniu ?: Różnice pomiędzy wersjami
Przejdź do nawigacji
Przejdź do wyszukiwania
m (Zastępowanie tekstu - "</source>" na "</pre>") |
|||
(Nie pokazano 2 pośrednich wersji utworzonych przez tego samego użytkownika) | |||
Linia 2: | Linia 2: | ||
Czyste zapytanie mysql | Czyste zapytanie mysql | ||
< | <pre> | ||
UPDATE tabela SET licznik=licznik+1 WHERE id=5 | UPDATE tabela SET licznik=licznik+1 WHERE id=5 | ||
</ | </pre> | ||
Linia 10: | Linia 10: | ||
Inkrementacja | Inkrementacja | ||
< | <pre> | ||
$sql = "UPDATE tabela SET licznik=licznik+1 WHERE id=:id"; | $sql = "UPDATE tabela SET licznik=licznik+1 WHERE id=:id"; | ||
$st = $dbh->prepare($sql); | $st = $dbh->prepare($sql); | ||
$st->bindParam(":id",$test['id']); | $st->bindParam(":id",$test['id']); | ||
$st->execute(); | $st->execute(); | ||
</ | </pre> | ||
Dekrementacja | Dekrementacja | ||
< | <pre> | ||
$sql = "UPDATE tabela SET licznik=licznik-1 WHERE id=:id"; | $sql = "UPDATE tabela SET licznik=licznik-1 WHERE id=:id"; | ||
$st = $dbh->prepare($sql); | $st = $dbh->prepare($sql); | ||
$st->bindParam(":id",$test['id']); | $st->bindParam(":id",$test['id']); | ||
$st->execute(); | $st->execute(); | ||
</ | </pre> | ||
[[Category:MySQL]] | |||
[[Category:PHP]] |
Aktualna wersja na dzień 17:23, 15 lut 2018
Czasami zachodzi konieczność stworzenia szybkiego licznika, w tym celu wystarczy
Czyste zapytanie mysql
UPDATE tabela SET licznik=licznik+1 WHERE id=5
Zapytanie z PDO
Inkrementacja
$sql = "UPDATE tabela SET licznik=licznik+1 WHERE id=:id"; $st = $dbh->prepare($sql); $st->bindParam(":id",$test['id']); $st->execute();
Dekrementacja
$sql = "UPDATE tabela SET licznik=licznik-1 WHERE id=:id"; $st = $dbh->prepare($sql); $st->bindParam(":id",$test['id']); $st->execute();