Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Преобразувайте DateTime в yyyyMMddHHmm в T-SQL

Това има няколко по-малко парчета нарязване от оригинала, но бих останал зад коментара си, че е по-добре да направите това във вашия презентационен слой - или където и да е, наистина, с общи средства за форматиране, а не в DB:

select CONVERT(varchar(20),myDate,112) + REPLACE(CONVERT(varchar(5),myDate,108),':','')

Наблюдения:112 е по-добър стил да се използва за преобразуване на частта от датата, тъй като тя вече няма разделители. И ако посочите дължина за преобразуване и конвертираният низ няма да се побере, тогава останалата част се отхвърля. Ето как премахнах секундната част от времето, като оставих място само за часове и минути. Но няма стил, който да не включва разделители във времевата част.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. има ли предимство varchar(500) пред varchar(8000)?

  2. Възстановяване на база данни от .mdf и .ldf файлове на SQL Server 2008

  3. Съвети за коригиране на фрагментацията на индекса на SQL Server

  4. 7 факта за синонимите на SQL Server, които трябва да знаете

  5. Премахване на дубликати с помощта на дял от SQL Server