W tabeli mmdsadmlg1 trzymam najważniejsze informacje o profilach, które rozróżniane są za pomocą numerów ID. Dwie pozostałe tabele dotyczą dodatkowych danych podawanych przez użytkownika:
mmdsadmlg2 - definiowany przez admina zestaw dodatkowych danych
daneid tinyint
danenazwa varchar
... (reszta kolumn)
mmdsadmlg3 - wartość konkretnej danej (daneid) konkretnego użytkownika (profid)
profid mediumint
daneid tinyint
wartosc varchar
Użytkownik nie musi podawać wszystkich danych, więc dla konkretnych użytkowników zestaw rekordów z dodatkowymi danymi nie będzie pełny (np. na 5 pól z dodatkowymi danymi użytkownik wypełni tylko 2).
Chciałbym "wyciągnąć" dla konkretnego użytkownika zestaw wszystkich dodatkowych danych zdefiniowanych przez admina i dołączyć te wartości, które wypełnił on podczas rejestracji, czyli otrzymać np. coś takiego:
Imię: Jan
Nazwisko: Kowalski
Adres: [brak danych]
Telefon: 1234567
GG [brak danych]
Zastosowałem zapytanie wykorzystujące JOIN (tu dla użytkownika o ID wartości 1):
SELECT * FROM tableadmlg2 tb2 LEFT JOIN tableadmlg3 tb3 ON tb2.daneid=tb3.daneid WHERE tb3.profid='1'
W tym jednak przypadku MySQL zwraca mi tylko te dane, przy których wartości są wypełnione przez użytkownika 1. Jak można wyświetlić listę wszystkich danych z wartościami pól wypełnionych przez konkretnego użytkownika?
Sprawa jest dość pilna, dlatego bardzo liczę na Waszą pomoc, za którą już dziś serdecznie dziękuję. Jeśli coś byłoby niejasne, proszę pisać na forum lub bezpośrednio do mnie przez GG (612901).