निम्नलिखित सरल MySQL क्वेरी पर विचार करें:
SELECT date, count (*) cnt, आईपी, एफवाईॉग ग्रुप से आईपी, डेविस हेविंग सीएटी & gt; 100 ORDER BY DESC, सीएनटी डीईएससी यह मुझे कुछ ऐसा देता है:
दिनांक cnt src 2013 -06-20 14441 172.16.ऐ 2013-06-20 8887 172.16.बी .... 2013-06-19 14606 172.16.बी 2013-06-19 12455 172.16.ए 2013-06-19 5205 172.16 सी। यही है, यह तिथि के आधार पर आईपी को सॉर्ट करता है, फिर गिनती के अनुसार निर्देशित किया जाता है।
अब मुझे परिणाम होना चाहिए:
< Li> आईपी को उच्चतम गणना आज के साथ दिखाएं, - फिर पिछले कुछ दिनों (सीएनटी से स्वतंत्र) के लिए उस आईपी की गणना दिखाएं,
- फिर आईपी को उसके साथ दिखाएं
- आदि।
वांछित परिणाम का उदाहरण:
-
दिनांक cnt srcC 2013-06-20 14441 172.16.ए 2013-06-19 12455 172.16.ए 2013-06-18 .... 172.16.ए 2013-06-17 .... 172.16 ए .... 2013-06-20 8887 172.16.बी 2013-06-19 14606 172.16.बी 2013-06-18 .... 172.16.बी 2013-06-17 .... 172.16. बी ... 2013-06-20 .... 172.16 । सी 2013-06-19 .... 172.16 सी 2013-06-18 .... 172.16 सी 2013-06-17 .... 172.16 सी ... ... क्या यह भी सादे एसक्यूएल का उपयोग किया जा सकता है?
बाय,
मार्की
============ ==============================
@ गॉर्डन लिनॉफ़:
<कोड > SELECT datex, cnt, ip fwlog से WHERE ... आईपी, आईटी द्वारा दिनांक ... एसआईएम द्वारा दिनांक (मामले जब datex = DATE (अब ()) तो 1 और 0 अंत) डीईएससी, एसआरसी, डीईएससी, सीएनटी डीईएससी 2013-06 -20 47 10.11.य 2013-06-19 47 10.11.य 2013-06-18 45 10.11.य 2013-06-17 42 10.11.य 2013-06-16 14 10.11.य .... 2013-06- 20 592 172.16.ए 2013-06-19 910 172.16.ए 2013-06-18 594 172.16.ए 2013-06-17 586 172.16.ए 2013-06-20 299 172.16. बी < P> यह अभी तक सही नहीं है, निचले ब्लॉक शीर्ष पर होना चाहिए।
कोशिश करें: < / P>
SELECT a.`date`, count (*) सीएनटी, a.ip fwlog से एक जोन (चयन आईपी, गिनती ( *) Today_count fwlog से जहां `date` = दिनांक (अब ()) आईपी द्वारा समूह) पर एक .ip = t.ip और t.today_count & gt; 100 ग्रुप बाय ए.पी., ए डीएटी ऑर्डर द्वारा टीडओएडएकाउंट डीईएससी, ए.पी., ए.ए.टी.टी. डीईएससी
No comments:
Post a Comment