2013-06-28 7 views
5

के बीच मैं एक मेज कहना तीन स्तंभों के साथ ईमेल बुलाया आईडी, emailFrom, emailToबातचीत का कोई उच्चतम गणना दो ग्राहकों

 
-------------------------------------------------- 
| id | emailFrom  | EmailT0    | 
-------------------------------------------------- 
| 1 | A    | B      | 
-------------------------------------------------- 
| 2 | B    | A      | 
-------------------------------------------------- 
| 3 | A    | B      | 
-------------------------------------------------- 
| 4 | C    | A      | 
-------------------------------------------------- 
| 5 | B    | C      | 
-------------------------------------------------- 
| 6 | A    | C      | 
-------------------------------------------------- 
| 7 | A    | B      | 
-------------------------------------------------- 

अब मेरे सवाल है, कैसे बाहर दो ग्राहकों के बीच उच्चतम बातचीत को खोजने के लिए

यानी एक मेल बी को और बी एक मेल भेजने भेजने के लिए, यह मतलब है कि वे अब गिनती 2. की बातचीत,
मैं जो उन है कि पता लगाना चाहते हैं एक दूसरे को

उत्तर

5

यह करने के लिए सबसे ईमेल भेजने के उन है कि एक दूसरे के लिए सबसे ईमेल भेजा है वापस आ जाएगी:

SELECT 
    LEAST(emailFrom, emailTo) email1, 
    GREATEST(emailFrom, emailTo) email2, 
    COUNT(*) 
FROM 
    yourtable 
GROUP BY 
    LEAST(emailFrom, emailTo), 
    GREATEST(emailFrom, emailTo) 
ORDER BY 
    COUNT(*) DESC 
LIMIT 1 

कृपया बेला here देखते हैं।

+0

आपकी मदद के लिए धन्यवाद, यह वास्तव में मेरी समस्या – user2531799

+0

हल @ user2531799 तुम्हारा स्वागत :) आप की जरूरत नहीं है कर रहे हैं, लेकिन अगर आप चाहें तो जवाब स्वीकार करना न भूलें ... http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work tnx! – fthiella

0

एक सीधा COUNT (*) एक समूह द्वारा के साथ यह करना होगा:

select emailFrom, emailTo, count(*) as conversation_count 
from email 
group by emailFrom, emailTo; 
+0

इससे केवल एक ही दिशा में जाने वाले ईमेल गिनेंगे, दोनों तरीकों से नहीं। – Tom

+0

आह ने इसे बिडरेक्शनल होने के बारे में गलत बताया, @fthiella ने उस मामले में उत्तर दिया;) – Timmetje

+0

यह आपको नहीं बताएगा कि क्या पूछा जा रहा है, मैंने पहले से ही इस प्रश्न का प्रयास किया है और इसके बाद मैंने अपना प्रश्न यहां पोस्ट कर दिया है, उपर्युक्त क्वेरी करेगा चाल ... – user2531799

संबंधित मुद्दे