Izquierda Unirse con la cláusula Where

Necesito recuperar todas las configuraciones predeterminadas de la tabla de configuraciones pero también tomar la configuración de caracteres si existe para el carácter x.

Pero esta consulta solo recupera la configuración donde el carácter es = 1, no la configuración predeterminada si el usuario no ha configurado a nadie.

SELECT `settings`.*, `character_settings`.`value`
FROM (`settings`)
LEFT JOIN `character_settings` 
ON `character_settings`.`setting_id` = `settings`.`id`
WHERE `character_settings`.`character_id` = '1'  

Entonces debería necesitar algo como esto:

array(
    '0' => array('somekey' => 'keyname', 'value' => 'thevalue'),
    '1' => array('somekey2' => 'keyname2'),
    '2' => array('somekey3' => 'keyname3')
)

Donde la clave 1 y 2 son los valores predeterminados cuando la clave 0 contiene el valor predeterminado con el valor del carácter.

Respuestas a la pregunta(5)

Su respuesta a la pregunta