WHERE (user_id = 17 OR user_id IS NULL) AND name = "menu_items"
En om de rest van de zoekopdracht op te schonen:
De id in gedefinieerde voorkeuren hoeft er niet te zijn, gebruik een gecombineerde sleutel van preference_id en user_id in plaats daarvan.
Als de id van preferences heette preference_id , de lange ON statement kan worden vervangen door USING(preference_id)
De IF functie kan worden vervangen door COALESCE(defined_value, default_value)