Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Update tabeli na podstawie wartości z innej tabeli
lustfingers
post
Post #1





Grupa: Zarejestrowani
Postów: 99
Pomógł: 5
Dołączył: 18.03.2015

Ostrzeżenie: (0%)
-----


Witam wszystkich,

Posiadam dwie tabele customer i customer_group.

Tabela customer posiada takie kolumny jak id_customer, customer_group_def, newsletter. W customer_group domyślnie jest 1 a w newsletter 0.
Przykład tabeli customer

| 1 | 1 | 0 |
| 2 | 2 | 1 |
| 3 | 1 | 0 |

Natomiast tabela customer_group posiada dwie kolumny id_customer i customer_group, tutaj wygląda to następująco id klienta i id grupy, jeśli klient należy do dwóch grup to są dwa wpisy o jednym id_customer z różnymi wartościami grup.
Przykład tabeli customer_group

| 1 | 1 |
| 2 | 1 |
| 2 | 2 |
| 3 | 1 |

Teraz przechodząc do sedna chcę do crona dodać takie zapytanie aby sprawdzał czy klient zaznaczył newsletter (wartość 1 w kolumnie) jeśli tak to zmieniałby wartość w customer_group_def na 2. To mogę zrobić takim zapytaniem:

UPDATE customer
SET customer_group_def = 2
WHERE newsletter = 1

Mój problem tkwi właśnie w drugiej tabeli czyli customer_group dla tych klientów z newsletterem musi zostać zaktualizowana o dwie wartości czyli klient z newsletterem musi należeć do obydwu grup 1 i 2 a klient bez newslettera do grupy 1.

Podpowie ktoś jak to zrobić?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
lustfingers
post
Post #2





Grupa: Zarejestrowani
Postów: 99
Pomógł: 5
Dołączył: 18.03.2015

Ostrzeżenie: (0%)
-----


Wytłumaczę jeszcze raz aby była jasność w tabeli customer standardowo w customer_group_def jest 1 co jest odpowiednikiem w tabeli customer_group wpisowi dla klienta
| 1 | 1 | jeśli zmienię klientowi domyślną grupę na 2 w tabeli customer to w tabeli customer_group powinny być dwa wpisy odnośnie jednego klienta:

| 1 | 1 |
| 1 | 2 |

Czyli klient o id 1 należy do domyślnej grup 1 i grupy dodatkowej 2.

Chcę zrobić tak sprawdzam w tabeli customer wartość kolumny newsletter jeśli 1 to zmieniam dla tego klienta wartość kolumny customer_group_def na 2, oraz dla tabeli customer_group wypisuje wszystkich klientów z wartością 1 oraz dodatkowo dla klientów z newsletterem wypisuje również z wartością 2.

Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 16:27