मेरे पास एक मेज है जिसमें अगले कॉलम हैं:
ip (varchar 255), सूचकांक (2020 मीटर), समय (टाइमस्टैम्प)
हर बार कुछ वहां डाला जाता है, टाइम कॉलम वर्तमान टाइमस्टैम्प को मिलता है मैं एक क्वेरी चलाऊँगा जो पिछले 24 घंटों में जोड़े जाने वाली सभी पंक्तियों को देता है। यह वही है जो मैं निष्पादित करने की कोशिश करता हूं:
सेलेक्ट आईपी, इंडेक्स से उपयोगकर्ता जहां आईपी = 'कुछ आईपी' और टाइमस्टैम्पफी (घंटे, समय, अब ()) & lt; 24
और यह काम नहीं करता है क्या कोई मेरी मदद कर सकता है? धन्यवाद:)
घंटे HOUR होना चाहिए यूनिट
पैरामीटर का मान्य मान देखने के लिए दस्तावेजीकरण देखें: TIMESTAMPADD (इकाई, अंतराल, datetime_expr)
पूर्णांक अभिव्यक्ति जोड़ता है तिथि या दिनांक समय अभिव्यक्ति के लिए अंतराल datetime_expr अंतराल के लिए इकाई इकाई तर्क से दी जाती है, जो निम्न मानों में से एक होना चाहिए: FRAC_SECOND (माइक्रोसेकंड), दूसरा, मिनट, घंटे, दिन, सप्ताह, महीने, तिमाही या YEAR
तो आपकी पूछताछ होनी चाहिए:
चयन आईपी, उपयोगकर्ता से आईपी = जहां आईपी = 'कुछ आईपी' और टाइमस्टैम्पफ़िफ़ (घंटे, समय, अब) ) & Lt; 24
यह भी ध्यान रखें कि यदि कोई मौजूद है, तो यह क्वेरी उस समय किसी इंडेक्स का लाभ उठाने में सक्षम नहीं होगा। निम्न प्रकार से क्वेरी को फिर से लिखना अधिक कुशल हो सकता है:
सेलेक्ट आईपी, इंडेक्स से उपयोगकर्ता जहां आईपी = 'कुछ आईपी' और समय & gt; अभी () - अंतराल 1 दिन
Comments
Post a Comment