Pojedyncza instrukcja MySQL do scalenia dwóch tabel

Jestem pewien, że już o to zapytano / odpowiedziałem, ale nie wiem, jak nazywa się ten rodzaj akcji, a moja wiedza SQL jest ograniczona.

Szukam pojedynczej instrukcji SQL do scalenia dwóch tabel:

Tabela UŻYTKOWNIK:

ID   hash
=========
1    abc
2    def
3    ghi

i tabela USER_FIELD:

ID  user_id key        value
=============================
1   1       firstname  John
2   1       lastname   Doe
3   2       firstname  Justin
4   2       lastname   Case

Teraz chciałbym wiedzieć, jak otrzymuję ten widok:

ID  hash  firstname   lastname
================================
1   abc   John        Doe

Jeśli więc dodam dodatkowy wpis w tabeli USER_FIELD z kluczem „e-mail”, otrzymam nową kolumnę w ostatnim wyniku

Czy jest to możliwe nawet w MySQL, czy muszę przejść i zmienić wynik w PHP?

Czy to nawet dobry projekt DB, czy powinienem to zrobić z innym (który?)

questionAnswers(5)

yourAnswerToTheQuestion