Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Warunek IF przy UPDATE [solved]
Forum PHP.pl > Forum > Bazy danych > MySQL
wujek2009
Hej, w jaki sposób używać warunku "IF" w zapytaniach pokroju "UPDATE"?

  1. UPDATE TABELA SET num_articles IF num_articles = 0 THEN SET '0' ELSE SET '-1' END IF WHERE id_cat = 2


Zwraca mi błąd:
Kod
SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF num_articles = 0 THEN SET '0' ELSE SET '-1' END IF WHERE id_cat = 2' at line 1


coś ze składnią, tylko nie wiem w jaki sposób właśnie poprawnie napisać ten warunek dla MySQL.
Mam kolumnę "num_articles" trzymającą ilość artykułów (MEDIUMINT), i po prostu ma się aktualizować za każdą zmianą kategorii - tylko, że jeśli num_articles wynosi 0, to gdy odejmie wartość, to kolumna przyjmuje maksymalne ID dla MEDIUMINT (> 16tys)
skowron-line
http://dev.mysql.com/doc/refman/5.0/en/con...tml#function_if
  1. UPDATE tabela SET num = IF(num=0, 0, -1) WHERE id = 2


dostosuj to do swoich potrzeb.
wujek2009
Wszystko działa, dzięki za pomoc ;-)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.