मुझे कई समान प्रश्न दिखाई देते हैं लेकिन वे या तो जटिल हैं, मैं उन्हें समझ नहीं पा रहा हूं, या वे एक ही बात नहीं पूछ रहे हैं।किसी अन्य प्रश्न में एक एसक्यूएल क्वेरी से परिणाम का उपयोग करें जहां कथन (सबक्वायरी?)
यह आसान है: मेरे पास दो कॉलम हैं: उपयोगकर्ता (डीएमआईडी) और डाउनलोड (डीएफआईडी)।
सभी उपयोगकर्ताओं को एक विशिष्ट फ़ाइल डाउनलोड का चयन करें:
SELECT DISTINCT dmid FROM downloads_downloads where dfid = "7024"
उपयोगकर्ताओं के ऊपर का उपयोग करना, सभी फाइलों को वे सभी डाउनलोड लगता है:
SELECT dfid from downloads_downloads WHERE dmid = {user ids from #1 above}
गणना और डीएफआईडी के आदेश परिणाम, इसलिए हम देख सकते हैं कि प्रत्येक फ़ाइल को कितने डाउनलोड प्राप्त हुए:
dfid dl_count_field ---- -------------- 18 103 3 77 903 66
उत्तर देने का मेरा प्रयास।
यह नज़दीक लगता है, लेकिन MySql नीचे गिरता है और 30 सेकंड के बाद भी प्रतिक्रिया नहीं देता है - मैं अंततः अपाचे को पुनरारंभ करता हूं। और अब मैं जटिल कथन की वजह से वाक्यविन्यास त्रुटियों के बिना गिनती और व्यवस्था को कैसे व्यवस्थित करना नहीं चाहता - और यह सही कथन भी नहीं हो सकता है। अगर यह बहुत लंबा तो लेता
SELECT dfid from downloads_downloads WHERE dmid IN (
SELECT DISTINCT dmid FROM `downloads_downloads` where dfid = "7024")
आप उपयोग नहीं करना चाहिए समझाने पोस्ट करने के लिए की आवश्यकता होगी चरित्र अक्षर के लिए डबल कोट्स ('" '), इसके बजाय सिंगल कोट्स का उपयोग करें। डबल कोट्स एक MySQL चीज हैं और अन्य डीबीएमएस के साथ काम नहीं करेंगे (क्योंकि मानक एसक्यूएल डबल कोट्स में पहचानकर्ताओं के लिए उपयोग किया जाता है, न कि शाब्दिक के लिए)। और यदि कि डीएफआईडी एक संख्यात्मक मूल्य है, आप किसी भी उद्धरण का उपयोग नहीं करना चाहिए। संख्याओं को उद्धरण की आवश्यकता नहीं है। –