لن تعطيك أي من الاستعلامات المذكورة أعلاه ما تبحث عنه بالضبط. بدون كتابة استعلام جديد، سيكون أفضل نهج هو تشغيل الاستعلام الأول الذي نشرته عدة مرات. قم بتشغيله مرة واحدة لكل حقل من حقولك المخصصة. أدخل اسم الحقل في مدخل field_name الخاص بالاستعلام. الاستعلام الذي أشير إليه هو هذا:
--[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)