SQL форматындағы DD/MMM/YYYY пішімін түрлендіру

Менде sql-де сұраныс бар, күнді dd/mmm/yy форматында алу керек

Мысалы: 25/jun/2013 .

SQL серверіне қалай түрлендіруге болады?

49
Сіз не істедік?
қосылды автор Anand, көзі
ықтимал көшірмесі stackoverflow.com/questions/15017300/…
қосылды автор Anand, көзі
қосылды автор Krish KvR, көзі
Мен форматты 25/06/2013 ретінде алдым, бірақ маған қажет 25/Маусым/2013
қосылды автор Krish KvR, көзі

8 жауаптар

Қалаған пішіміңіз үшін дәл сәйкестік бар екеніне сенімді емеспін. Бірақ сіз convert() және стиль 106 . Содан кейін бос орындарды ауыстырыңыз:

SELECT replace(convert(NVARCHAR, getdate(), 106), ' ', '/')
55
қосылды
Джонатан Лоновски алғыс білдірді
қосылды автор Krish KvR, көзі
Жай ғана айтатын болсақ, 103 коды сұралған күнді форматты жай сандармен тікелей береді.
қосылды автор Rajiv, көзі

SQL сервері 2008 үшін қазірдің өзінде бірнеше жауаптар мен пішімдеу түрлері бар. Бірақ бұл әдіс біршама емес және бұл нақты күн пішіміне қатысты нөмірді есте сақтау қиын болады. Сондықтан SQL серверінің келесі нұсқаларында жақсы опция бар.

If you are using SQL Server 2012 or above versions, you should use Format() function

FORMAT ( value, format [, culture ] )

Мәдениет параметрі арқылы сіз көрермендеріңізге күнді көрсете аласыз.

DECLARE @d DATETIME = '10/01/2011';
SELECT FORMAT ( @d, 'd', 'en-US' ) AS 'US English Result'
      ,FORMAT ( @d, 'd', 'en-gb' ) AS 'Great Britain English Result'
      ,FORMAT ( @d, 'd', 'de-de' ) AS 'German Result'
      ,FORMAT ( @d, 'd', 'zh-cn' ) AS 'Simplified Chinese (PRC) Result'; 

SELECT FORMAT ( @d, 'D', 'en-US' ) AS 'US English Result'
      ,FORMAT ( @d, 'D', 'en-gb' ) AS 'Great Britain English Result'
      ,FORMAT ( @d, 'D', 'de-de' ) AS 'German Result'
      ,FORMAT ( @d, 'D', 'zh-cn' ) AS 'Chinese (Simplified PRC) Result';

US English Result Great Britain English Result  German Result Simplified Chinese (PRC) Result
----------------  ----------------------------- ------------- -------------------------------------
10/1/2011         01/10/2011                    01.10.2011    2011/10/1

US English Result            Great Britain English Result  German Result                    Chinese (Simplified PRC) Result
---------------------------- ----------------------------- -----------------------------  ---------------------------------------
Saturday, October 01, 2011   01 October 2011               Samstag, 1. Oktober 2011        2011年10月1日

ОР шешімі үшін біз @Martin Smith атаған келесі форматты пайдалана аламыз:

FORMAT(GETDATE(), 'dd/MMM/yyyy', 'en-us')

Кейбір үлгі күн пішімдері:

enter image description here

Егер сіз SQL серверінің көп күн пішімдерін қажет етсеңіз, келесіз:

  1. Таңдамалы күн мен уақыт форматы
  2. Стандартты күн мен уақыт форматы
35
қосылды

біз күні сияқты көптеген форматтарға түрлендіруге болады

SELECT convert(varchar, getdate(), 106)

Бұл dd mon yyyy мәнін қайтарады

More Here This may help you

29
қосылды

Төмендегі сұрауды қолданып көріңіз.

SELECT REPLACE(CONVERT(VARCHAR(11),GETDATE(),6), ' ','/');  

Нәтиже: 20 маусым/13

SELECT REPLACE(CONVERT(VARCHAR(11),GETDATE(),106), ' ','/');  

Нәтиже: 20 маусым/2013

8
қосылды

Қабылданған жауап 2008 жылы орнатылған пішімдеу әдістерін қолдана отырып, жақсы шешімді ұсынады.

Айта кету керек, нәтиже қайтарылатын тілдің тіліне байланысты.

SET language Russian

SELECT replace(CONVERT(NVARCHAR, getdate(), 106), ' ', '/') 

Қайтару

06/апр/2015

жазу кезінде.

Бұл сұрақтың үстінен адамдарға SQL Server-тың соңғы нұсқаларында осы мәселені болдырмайтын әдіс - және REPLACE қажет

FORMAT(GETDATE(),'dd/MMM/yyyy', 'en-us')

2005-ші жылы дәл солай ұқсастығын қамтамасыз ету үшін DateTime, Formatting Pattern және Мәдениетті қабылдаған CLD UDF жазуға болады.

7
қосылды

Мынаны көріңіз:

select replace ( convert(varchar,getdate(),106),' ','/')
1
қосылды

Мұны көріңіз

select convert(varchar,getdate(),100)

үшінші параметр - пішім, диапазон 100 -ден 114 -ге дейін, кез келген адам сізге жұмыс істеуі керек.

Егер сізге dd/mmm/yyyy ішінде күн керек болса, бұл:

replace(convert(char(11),getdate(),113),' ','-')

getdate() дегенді баған атауы арқылы ауыстырыңыз. Бұл мен үшін жұмыс істеді.

1
қосылды

Күнді sql серверіне 'күн-ай-түрі' айнымалы мәніне қолмен енгізуге тырысатын кез келген адам кіргенде осы пішімді пайдаланады:

'yyyy-mm-dd'

0
қосылды