Declaración única de MySQL para fusionar dos tablas

Estoy seguro de que esto ya ha sido preguntado / respondido, pero no sé cómo se llama a este tipo de acción y mi conocimiento de SQL es limitado.

Estoy buscando una sola instrucción SQL para combinar dos tablas:

Tabla USUARIO:

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

y la tabla USER_FIELD:

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

Ahora me gustaría saber cómo obtengo esta vista:

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

Entonces, si agrego una entrada adicional en la tabla USER_FIELD con una clave "correo electrónico", obtengo una nueva columna en el último resultado

¿Esto es posible solo en MySQL o debo modificar el resultado en PHP?

¿Es esto incluso un buen diseño de base de datos o debería dejarlo de lado con otro (cuál?)

Respuestas a la pregunta(5)

Su respuesta a la pregunta