दिलचस्प पोस्ट
आप जंग में एक सुरक्षित स्थिर सिंगलटन कैसे बना सकते हैं? IDisposable को सही ढंग से कार्यान्वित करना हस्केल के स्नैप और हूसेड वेब फ्रेमवर्क की तुलना करना MSI vs nuget संकुल: कौन सी लगातार डिलीवरी के लिए बेहतर है? स्विफ्ट भाषा NSClassFromString कैसे जांच करें कि क्या एनएसडीटी दो अन्य एनएसडीटियों के बीच होता है मैं C # में एक लेबल को कैसे घुमाएगा? ब्राउज़र में अन्य टैब की सामग्री तक पहुंच PHP पासवर्ड के लिए सुरक्षित हैश और नमक क्या मेमोरी लीक कभी ठीक है? कैसे ब्राउज़र बंद का पता लगाने के लिए? पाठ को सीआईबीली छवि की चौड़ाई तक सीमित करें / सीएसएस में ऑटो चौड़ाई सटीक खोने के बिना डबल प्रिंटिंग AVX और एसएसई के लिए दृश्य स्टूडियो के लिए सीपीयू डिस्पैचर एक सार सिंटैक्स ट्री और कंक्रीट सिंटैक्स ट्री के बीच अंतर क्या है?

रिकॉर्डों को खोजने के लिए एसक्यूएल क्वेरी जहां गिनती> 1

मेरे पास PAYMENT नामित एक मेज है I इस तालिका के भीतर मेरे पास एक प्रयोक्ता आईडी, खाता संख्या, एक ज़िप कोड और एक तारीख है। मैं उन सभी उपयोगकर्ताओं के लिए सभी रिकॉर्ड ढूंढना चाहूंगा, जिनके पास एक ही खाता नंबर वाला एक से अधिक भुगतान होता है।

अद्यतनः इसके अतिरिक्त, केवल उस रिकॉर्ड की गणना के आधार पर कोई फिल्टर होना चाहिए जिसका ज़िप कोड अलग है

यह टेबल कैसे दिखता है:

  |  user_id |  खाता_no |  ज़िप |  तिथि |
 |  1 |  123 |  55555 |  12-डीईसी -0 9 
 |  1 |  123 |  66666 |  12-डीईसी -0 9
 |  1 |  123 |  55555 |  13-DEC-09 |
 |  2 |  456 |  77777 |  14-DEC-09 |
 |  2 |  456 |  77777 |  14-DEC-09 |
 |  2 |  78 9 |  77777 |  14-DEC-09 |
 |  2 |  78 9 |  77777 |  14-DEC-09 |

इसका परिणाम इसी तरह दिखना चाहिए:

  |  user_id |  गिनती |
 |  1 |  2 |

आप इसे SQL क्वेरी में कैसे व्यक्त करेंगे? मैं स्वयं शामिल सोच रहा था लेकिन किसी कारण से मेरी गिनती गलत है

Solutions Collecting From Web of "रिकॉर्डों को खोजने के लिए एसक्यूएल क्वेरी जहां गिनती> 1"

HAVING खंड और ग्रुप का प्रयोग उन क्षेत्रों के द्वारा करें जो पंक्ति को अद्वितीय बनाते हैं

नीचे मिलेगा

सभी उपयोगकर्ता जिनके पास एक ही खाता संख्या वाला एक से अधिक भुगतान होता है

 SELECT user_id , COUNT(*) count FROM PAYMENT GROUP BY account, user_id , date Having COUNT(*) > 1 

अपडेट यदि आप केवल उन लोगों को शामिल करना चाहते हैं जिनके पास एक विशिष्ट ज़िप है तो आप पहले एक विशिष्ट सेट प्राप्त कर सकते हैं और फिर आपको ह्विंग / ग्रुप बी

  SELECT user_id, account_no , date, COUNT(*) FROM (SELECT DISTINCT user_id, account_no , zip, date FROM payment ) payment GROUP BY user_id, account_no , date HAVING COUNT(*) > 1 

इस प्रश्न को आज़माएं:

 SELECT column_name FROM table_name GROUP BY column_name HAVING COUNT(column_name) = 1; 
 create table payment( user_id int(11), account int(11) not null, zip int(11) not null, dt date not null ); insert into payment values (1,123,55555,'2009-12-12'), (1,123,66666,'2009-12-12'), (1,123,77777,'2009-12-13'), (2,456,77777,'2009-12-14'), (2,456,77777,'2009-12-14'), (2,789,77777,'2009-12-14'), (2,789,77777,'2009-12-14'); select foo.user_id, foo.cnt from (select user_id,count(account) as cnt, dt from payment group by account, dt) foo where foo.cnt > 1; 

मैं HAVING लिए HAVING कीवर्ड की अनुशंसा नहीं करता, यह मूलतः उद्देश्यों के लिए है

मैं इस तालिका की कुंजी (यह पूरी तरह से सामान्यीकृत है , मुझे आश्चर्य है कि?) पर स्पष्ट नहीं हूं, इसके परिणामस्वरूप मुझे आपके विनिर्देशों का पालन करना मुश्किल लगता है:

मैं उन सभी उपयोगकर्ताओं के लिए सभी रिकॉर्ड ढूंढना चाहूंगा, जिनके पास एक ही खाता संख्या के साथ प्रति दिन एक से अधिक भुगतान हैं … इसके अतिरिक्त, कोई रिकॉर्ड होना चाहिए, जिनके रिकॉर्ड का रिकॉर्ड अलग है, जिनकी ज़िप कोड अलग है

इसलिए मैंने एक शाब्दिक व्याख्या ली है।

निम्नलिखित शब्दशः अधिक है, लेकिन समझने में आसान हो सकता है और इसलिए बनाए रखता हूं (मैंने मेज के लिए सीटीई का उपयोग किया है PAYMENT_TALLIES लेकिन यह एक VIEW हो सकता है:

 WITH PAYMENT_TALLIES (user_id, zip, tally) AS ( SELECT user_id, zip, COUNT(*) AS tally FROM PAYMENT GROUP BY user_id, zip ) SELECT DISTINCT * FROM PAYMENT AS P WHERE EXISTS ( SELECT * FROM PAYMENT_TALLIES AS PT WHERE P.user_id = PT.user_id AND PT.tally > 1 ); 
  delete t1 from @tbl t1 where 1<(select count(ID) from @tbl where ID=t1.ID)