संस्करणों में <2008 (जो, कुछ उत्तरों के लिए अन्य टिप्पणियों के आधार पर, मेरा मानना है कि आप चल रहे हैं), सबसे प्रभावी तरीका यह है कि इसे डेटाटाइम प्रकार के रूप में रखा जाए और स्ट्रिंग रूपांतरणों से बचने के लिए दिनांक गणित का उपयोग किया जाए।
SELECT DATEADD(DAY, DATEDIFF(DAY, '20000101', purchase_time), '20000101')
FROM dbo.table;
संपादित करें
यदि आप केवल प्रदर्शन उद्देश्यों के लिए तारीख चाहते हैं, गणना या समूह के लिए नहीं, तो शायद क्लाइंट पर सबसे अच्छा संभाला जाता है। आप इसे SQL में केवल यह कहकर कर सकते हैं:
SELECT dt = CONVERT(CHAR(10), purchase_time, 120)
FROM dbo.table;