Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL] update left join
by_ikar
post 30.08.2011, 14:06:36
Post #1





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Witam, borykam się z pewnym problemem, aktualizacji danych w 2 tabelach. Najlepiej chyba będzie przedstawić to na przykładzie użytkowników. Podstawowa tabela users w której są podstawowe dane, i druga tabela custom_field w której są dane które użytkownik może a nie musi uzupełniać. Jeżeli przykładowo wykonam takie zapytanie:

Kod
UPDATE users LEFT JOIN custom_field ON (id=user_id) SET custom_column="some" WHERE id=1


gdzie custom_column jest kolumną z tabeli custom_field, dane się zaktualizują o ile istnieje rekord w tabeli custom_field. Zależy mi na tym aby nie było aliasów do tabel oraz na tym aby nie pojawiał się rekord w custom_field, o ile tych danych nie potrzebuje tam zapisać. I problem w tym że nie wiem jak to elegancko ogarnąć. Bo mogę sprawdzić czy dane podawane do aktualizacji, są z tabeli custom_field i następnie sprawdzić czy istnieje odpowiedni rekord jeżeli nie to go utworzyć. A całość chciałbym przerzucić na sql, aby to on dodawał rekord przed aktualizacją, jeżeli w powyższym przypadku user_id będzie null. Nie wiem czy jest to możliwe do zrobienia z poziomu samego sql'a, i czy jest dobre.

Dzięki z góry za pomoc.

Ten post edytował by_ikar 30.08.2011, 14:10:53
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 05:30