Nenhuma das consultas acima lhe dará exatamente o que você procura. Sem escrever uma nova consulta, a melhor abordagem seria executar a primeira consulta que postei várias vezes. Execute-a uma vez para cada um dos seus campos personalizados. Insira o nome do campo na entrada field_name da consulta. A consulta a que me refiro é esta:
--[params]
-- string :field_name
WITH ucf_name AS(
SELECT
CONCAT('user_field_', id) AS name
FROM user_fields
WHERE name = :field_name
)
SELECT
u.id AS user_id,
ucf.value
FROM users u
JOIN user_custom_fields ucf
ON ucf.user_id = u.id
WHERE ucf.name = (SELECT name FROM ucf_name)