2011-04-23 22 views
5

मैं कौन सी माईएसQL क्वेरी का उपयोग केवल बार बार बार बार बारने के लिए करना चाहिए?MySQL: पंक्तियों को दो बार बार-बार कैसे प्राप्त करें

उदाहरण (बेवकूफ एक ^^):

John likes apples. 
Dave likes apples. 
Bough likes bananas. 
Light likes apples. 
Wiky likes bananas. 

मैं एक प्रश्न है कि सिर्फ 3 लोग (मेरे उदाहरण में सेब) द्वारा पसंद फल देता है चाहता हूँ। चीयर्स!

+0

मैं इस एक पता करने के लिए मर रहा है किया गया है - सब मेरे पास है हैक्स है, मैं करना चाहते हैं एक असली जवाब देखें। – Malvolio

+2

क्या मतलब है "बस बार बार बार बार बार बार?" –

+1

क्या आप हमें दोबारा पंक्ति पर विचार करने का उदाहरण दे सकते हैं? – elitalon

उत्तर

2

मैं एक प्रश्न है कि बसरिटर्न चाहते हैंफल (मेरी उदाहरण में सेब) 3 लोगों द्वारा पसंद

इस प्रयास करें:

SELECT fruit_name FROM `table` group by fruit_name having count(fruit_name)>=3; 
+0

ग्रेट हैरी जॉय, यहां एक व्यक्ति है जो मदद करता है! धन्यवाद, आपने इसे हल किया! –

+0

@ नजज: आपका हमेशा स्वागत है। लेकिन अगली बार उचित और स्पष्ट विवरण के साथ प्रश्न पूछें। –

+0

ठीक हैरी, मैं करूँगा, धन्यवाद। –

0

आप एक स्तंभ के प्रत्येक दोहराया पंक्ति गिनती करने के लिए कोशिश कर रहे हैं:

select count(*), column1 from table group by column 

निर्दिष्ट करें "स्तंभ" कॉलम आप को पता है अगर यह दोहराया है चाहते हैं। यदि आप देखना चाहते हैं कि एक से अधिक स्तंभ दोहराए गए हैं, तो अल्पविराम से अलग करें।

select count(*), column1, column2 from table group by column1,column2 

संपादित करें:

और तुम एक्स दोहराता के साथ सिर्फ पंक्तियां प्राप्त करना चाहते हैं:

select c, column1 from (select count(*) as c, column1 from table group by column1) where c = X 
2

अगर "पता" स्तंभ है जिसके द्वारा आप को परिभाषित करता है, तो 2 पंक्तियाँ एक ही कर रहे हैं, तो:

select address, count(address) as cnt from mailing_list group by address having cnt = $x order by cnt; 
संबंधित मुद्दे