Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

एक nvarchar कॉलम को दिनांक स्वरूप में बदलना

इसलिए, यह मानते हुए कि आपके कॉलम के केवल दो प्रारूप हैं, आप निम्न कार्य कर सकते हैं:

SELECT CONVERT(NVARCHAR(19),CONVERT(DATETIME,DT_APP,100),120)
FROM YourTable
WHERE DT_APP LIKE '%[aA-zZ]%'

अपडेट किया गया

ठीक है, यदि आप एक और कॉलम चाहते हैं, तो आप पहले इसे बना सकते हैं और फिर मान भर सकते हैं:

-- First create a new column
ALTER TABLE YourTable
ADD DT_APP2 DATETIME;

-- Fill that column with DATETIME values
UPDATE YourTable
SET DT_APP2 =   CASE WHEN DT_APP LIKE '%[aA-zZ]%'
                THEN CONVERT(DATETIME,DT_APP,100)
                ELSE CONVERT(DATETIME,DT_APP,120) END

उसके बाद, आप यह देखने के लिए कॉलम की जांच कर सकते हैं कि क्या मान सही हैं और उसके बाद ही आपको DT_APP को हटाना चाहिए। कॉलम।

अपडेट 2 यदि आपको केवल वर्तमान मान अपडेट करने की आवश्यकता है, तो बस करें:

UPDATE YourTable
SET DT_APP = CONVERT(NVARCHAR(19),CONVERT(DATETIME,DT_APP,100),120)
WHERE DT_APP LIKE '%[aA-zZ]%'



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. उपलब्धता समूहों पर हमेशा SQL सर्वर की निगरानी करने के विभिन्न तरीके

  2. एकाधिक रिकॉर्ड कैसे सम्मिलित करें और पहचान मूल्य कैसे प्राप्त करें?

  3. एक सर्वर एकाधिक क्लाइंट से वेब सेवा अनुरोधों को कैसे संभालता है

  4. बीसीपी उपयोगिता और एसक्यूएल सर्वर 2008 का उपयोग करके कॉलम हेडर (कॉलम नाम) के साथ फाइल करने के लिए निर्यात तालिका

  5. SQL कस्टम आदेश द्वारा