Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Niecodzienne zapytanie do bazy
Forum PHP.pl > Forum > Przedszkole
ixpack
Witam ponownie... Cały dzień męczę się z jednym zapytaniem, które być może nie będzie stanowiło dla was problemu.

Chcę, aby baza zmieniła rekord w tabeli.kolumnie z wartości 'tp' na wartość 'no', ale tylko w 2 przypadkach:
1)
  1. UPDATE produkty, timepromo_info SET produkty.saleroom='no'
  2. WHERE ((produkty.saleroom != 'no' AND UNIX_TIMESTAMP()>=timepromo_info.end)
  3. OR (2gi przypadek))

- 1szy przypadek działa super... Ale teraz 2gi przypadek, czyli zmiana produkty.saleroom z wartości innej niż 'no' - na tą właśnie wartość.
2gi przypadek stanowi tak jakby zabezpieczenie, gdyby cudem znikła wartość end albo cały wpis winksmiley.jpg (cuda się zdarzają) z tabeli timepromo_info. Kombinowałem z IFNULL, ale nie idzie tak jak chcę :/.

Obie tabele zawierają jeszcze kolumnę: productid, którą można wykorzystać - ale 2gi przypadek ma po prostu zmieniać komórkę produkty.saleroom na wartość 'no', jeżeli nie byłoby jakichkolwiek danych w tabeli timepromo_info produktu, który jest w tabeli produkty. Nie wiem czy mysql ma takie polecenia, które to mogłyby rozwiązać. Jeżeli nie to dam sobie na luz i zrobię "na około".

Pozdrawiam.
Lilo
Witaj, nie wiem, czy o to Ci chodzi, otóż jest słowo kluczowe DEFAULT, które sprawia, że w pustej kolumnie zostanie zapisana określona wartość domyślna. http://brasil.cel.agh.edu.pl/~09seenglert/...mp;menu=DEFAULT
ixpack
Może jeszcze raz: mam 2 tabele. 1sza z 3 kolumnami (productid, mainid, saleroon), saleroom ma wartości ('tp', 'no', 'yes'). Druga tabela ma kolumny (productid, start, end). 1sza tabela zawsze ma wartości, ale 2ga zdarzy się, że wartości nie będzie w ogóle.
Chcę, aby skrypt zmienił wartość w 1szej tabeli, w kolumnie saleroom z jakiejkolwiek innej niż 'no', na właśnie 'no' - i tu mały problem, chcę aby zapytanie zmieniło tą wartość gdy danego productid nie będzie w 2giej tabeli.

Czyli jeżeli mam produkt X, a wartość saleroom jest inna niż 'no', a produktu X nie ma w 2giej tabeli to wówczas następuje update saleroom na wartość 'no'. Oczywiście powinno to działać dla wszystkich "brakujących" produktów.

Mam nadzieję, że rozumiecie.
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.