यह जो डेटाबेस कार्यों का लाभ लेने के लिए, की तरह डेवलपर्स के एक बहुत करने के लिए पागल ध्वनि सकता है
लेकिन phs की तुलना करने वाले दिनांक कार्यों के साथ mysql और postgrsql के लिए अनुप्रयोगों को बनाने, बनाने और बगफिक्स करने के लिए पूरी समस्याएं होने के बाद, मैं निष्कर्ष (स्वयं के लिए) पर आया हूं, यह सबसे आसान तरीका है, जो कम एसक्यूएल सिरदर्द के साथ सबसे सरल है उनमें से किसी का लाभ उठाएं।
क्यों? क्योंकि यदि आप PHP जैसी मिडलवेयर भाषा में विकास कर रहे हैं, तो PHP में इन सभी कार्यों में से हैं, और पूर्णांक की तुलना में एप्लिकेशन ओडी में उन्हें लागू करना आसान है। PostgreSQL टाइमस्टैम्प यूनिक्स TIMESTAMP == है नहीं और MySQL के यूनिक्स टाइमस्टैम्प नहीं है PostgreSQL या दैवज्ञ टाइमस्टैम्प .. यदि आप डेटाबेस टाइम स्टांप का उपयोग बंदरगाह के लिए कठिन हो जाता है ..
तो बस संख्या के रूप में एक पूर्णांक, नहीं एक टाइमस्टैम्प, का उपयोग जनवरी 1 9 70 मध्यरात्रि के बाद से सेकंड का। और डेटाबेस टाइमस्टैम्प को कभी भी ध्यान न दें। , और gmdate() का उपयोग करें और टाइमज़ोन समस्याओं से बचने के लिए सब कुछ जीएमटी समय के रूप में स्टोर करें।
आप खोज करने, प्रकार या अन्य डेटा, या महीने या वर्ष या सप्ताह के दिन, या कुछ भी से दिन की तुलना, आपके आवेदन, और time_day, time_hour, time_seconds के लिए पूर्णांक डेटाप्रकार में की जरूरत है। या जो कुछ भी आप खोजे जाने के लिए इंडेक्स करना चाहते हैं, वह चिकनी और अधिक पोर्टेबल डेटाबेस के लिए तैयार होगा। आप केवल एक फ़ील्ड का उपयोग कर सकते हैं, ज्यादातर मामलों में: INTEGER time_created नहीं NULL
(आपके डेटाबेस पंक्ति में अधिक फ़ील्ड इस समाधान के लिए एकमात्र कमी है जो मैंने पाया है, और इससे कई सिरदर्द या कप नहीं होते हैं कॉफी :)
php की तारीख फ़ंक्शन दिनांक, की तुलना करने के लिए बकाया हैं, लेकिन तारीखों की तुलना में mysql या postgresql में? नहीं .. पूर्णांक एसक्यूएल तुलना का उपयोग करें
मुझे एहसास है कि यह एक सम्मिलित फ़ंक्शन पर CURRENT_TIMESTAMP का उपयोग करना आसान हो सकता है। हा! मूर्ख मत बनो।
आप DELETE FROM SESSION_TABLE WHERE time-initialized < '2 days'
कर सकते हैं यदि समय-प्रारंभिक पोस्टग्रेस्क्ल टाइमस्टैम्प है। लेकिन आप कर सकते हैं:
DELETE FROM SESSION_TABLE WHERE time_initialized < '$yesterday'
जब तक आप 1970 कि कल था के बाद से सेकंड के पूर्णांक के रूप में php में $ कल सेट के रूप में।
पोस्टग्रेस्क्ल चयन विवरणों में टाइमस्टैम्प की तुलना में सत्र रिकॉर्ड की यह आसान हाउसकीपिंग है।
चयन आयु(), चयन निकालें(), और एस्बाइम स्वयं में सिरदर्द हैं। यह सिर्फ मेरी राय है।
आप इसके अलावा, घटाव, <,> क्या कर सकते हैं, php तारीख के साथ सभी वस्तुओं
_peter_sysko U4EA नेटवर्क, Inc
यह वास्तव में निकटतम है। सभी दशमलवों को छोड़ना एक समस्या नहीं होनी चाहिए हालांकि मैं अंतर्निहित फ़ंक्शन की कमी के कारण इसे MySQL की तरह करने के लिए दुखी हूं। – TheLizardKing
कोई दशमलव नहीं होना चाहिए, क्योंकि यह पूर्णांक विभाजन कर रहा है। – araqnid
अरकनिड, मैंने ऐसा भी सोचा, लेकिन मैंने अभी कोशिश की है और यह वास्तव में फ्लोट उत्पन्न करता है। –