Devo recuperare tutte le impostazioni predefinite dalla tabella delle impostazioni, ma anche prendere l'impostazione del carattere se esiste per il carattere x.
Ma questa query recupera solo quelle impostazioni in cui il carattere è = 1, non le impostazioni predefinite se l'utente non ha impostato nessuno.
SELECT `settings`.*, `character_settings`.`value`
FROM (`settings`)
LEFT JOIN `character_settings`
ON `character_settings`.`setting_id` = `settings`.`id`
WHERE `character_settings`.`character_id` = '1'
Quindi dovrei aver bisogno di qualcosa del genere:
array(
'0' => array('somekey' => 'keyname', 'value' => 'thevalue'),
'1' => array('somekey2' => 'keyname2'),
'2' => array('somekey3' => 'keyname3')
)
Dove chiave 1 e 2 sono i valori predefiniti quando la chiave 0 contiene il valore predefinito con il valore del carattere.