यहां चुनौती यह है कि आपको इनपुट के रूप में अपने एसक्यूएल स्टेटमेंट के एपीआई प्रतिक्रिया से प्राप्त इन मूल्यों को पास करना होगा और इनपुट के आधार पर गतिशील रूप से कोई तुलना नहीं बनाकर आउटपुट उत्पन्न करना होगा।
अब, अगर मैं आपके बैक-एंड प्लेटफॉर्म से परिचित होता, तो मैं अधिक उपयुक्त समाधान देता, लेकिन जैसा कि मुझे Node.js से अवगत नहीं है, मेरे समाधान में केवल आवश्यक SQL कथन और शेष भाग शामिल होंगे जिनकी आपको आवश्यकता है DIY.
पहली चीज़ जो आपको करने की ज़रूरत है वह है इस एपीआई प्रतिक्रिया को पार्स करना और इन मानों को डेटा संरचना में संग्रहीत करना।
अब, एक Temporary table
बनाएं अपने Node.js
. से कोड और इन इनपुट मानों को इस तालिका में संग्रहीत करें।
CREATE TEMPORARY TABLE Input (id INT, value INT);
उस डेटा संरचना से इस तालिका में डेटा जोड़ें।
अब, निम्न क्वेरी चलाएँ और आपको वह मिलेगा जो आप चाहते हैं:
SELECT skp.quest_id
FROM SKILL_PREREQUISITES skp
GROUP BY quest_id
HAVING COUNT(skp.quest_id) =
( SELECT COUNT(quest_id)
FROM Input i
JOIN SKILL_PREREQUISITES sp
ON sp.prerequisite_skill_id = i.id
AND sp.skill_value <= i.value
WHERE skp.quest_id = sp.quest_id
)