Nessuna delle query sopra ti darà esattamente ciò che stai cercando. Senza scrivere una nuova query, l’approccio migliore sarebbe eseguire più volte la prima query che ho pubblicato. Eseguila una volta per ciascuno dei tuoi campi personalizzati. Inserisci il nome del campo nell’input field_name della query. La query a cui mi riferisco è questa:
--[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)