Microsoft SQL Server
日付
サーチ…
構文
- EOMONTH( 開始日 [、month_to_add])
備考
https://msdn.microsoft.com/en-us/library/ms187819.aspxによると 、 DateTime
は3msまでしか正確ではありません。
分数秒の丸め次の表に示すように、精度の日時値は.000、.003、または.007秒の単位で四捨五入されます。
ユーザー指定の値 | システム保存値 |
---|---|
01/01/98 23:59:59.999 | 1998-01-02 00:00:00.000 |
------ | ------ |
01/01/98 23:59:59.995 | 1998年1月1日23:59:59.997 |
01/01/98 23:59:59.996 | |
01/01/98 23:59:59.997 | |
01/01/98 23:59:59.998 | |
------ | ------ |
01/01/98 23:59:59.992 | 1998年1月1日23:59:59.993 |
01/01/98 23:59:59.993 | |
01/01/98 23:59:59.994 | |
------ | ------ |
01/01/98 23:59:59.990 | 1998年1月1日23:59:59.990 |
01/01/98 23:59:59.991 | |
------ | ------ |
さらに精度が必要な場合は、 time
、 datetime2
またはdatetimeoffset
を使用する必要があります。
CONVERTを使用した日付と時刻の書式設定
CONVERT関数を使用して、日時データ型を書式設定された文字列にキャストできます。
SELECT GETDATE() AS [Result] -- 2016-07-21 07:56:10.927
組み込みのコードを使用して、特定の形式に変換することもできます。 SQL Serverに組み込まれているオプションは次のとおりです。
DECLARE @convert_code INT = 100 -- See Table Below SELECT CONVERT(VARCHAR(30), GETDATE(), @convert_code) AS [Result]
@convert_code | 結果 |
---|---|
100 | "Jul 21 2016 7:56 AM" |
101 | "07/21/2016" |
102 | "2016.07.21" |
103 | "21/07/2016" |
104 | "21.07.2016" |
105 | "21-07-2016" |
106 | "2016年7月21日" |
107 | "2016年7月21日" |
108 | "07:57:05" |
109 | "Jul 21 2016 7:57:45:707AM" |
110 | "07-21-2016" |
111 | "2016/07/21" |
112 | "20160721" |
113 | "21 Jul 2016 07:57:59:553" |
114 | "07:57:59:553" |
120 | "2016-07-21 07:57:59" |
121 | "2016-07-21 07:57:59.553" |
126 | "2016-07-21T07:58:34.340" |
127 | "2016-07-21T07:58:34.340" |
130 | "16:1437 7:58:34:340AM" |
131 | "16/10/1437 7:58:34:340AM" |
SELECT GETDATE() AS [Result] -- 2016-07-21 07:56:10.927
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),100) AS [Result] -- Jul 21 2016 7:56AM
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),101) AS [Result] -- 07/21/2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),102) AS [Result] -- 2016.07.21
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),103) AS [Result] -- 21/07/2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),104) AS [Result] -- 21.07.2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),105) AS [Result] -- 21-07-2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),106) AS [Result] -- 21 Jul 2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),107) AS [Result] -- Jul 21, 2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),108) AS [Result] -- 07:57:05
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),109) AS [Result] -- Jul 21 2016 7:57:45:707AM
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),110) AS [Result] -- 07-21-2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),111) AS [Result] -- 2016/07/21
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),112) AS [Result] -- 20160721
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),113) AS [Result] -- 21 Jul 2016 07:57:59:553
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),114) AS [Result] -- 07:57:59:553
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),120) AS [Result] -- 2016-07-21 07:57:59
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),121) AS [Result] -- 2016-07-21 07:57:59.553
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),126) AS [Result] -- 2016-07-21T07:58:34.340
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),127) AS [Result] -- 2016-07-21T07:58:34.340
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),130) AS [Result] -- 16 ???? 1437 7:58:34:340AM
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),131) AS [Result] -- 16/10/1437 7:58:34:340AM
FORMATを使用した日付と時刻の書式設定
新しい関数: FORMAT()
利用することができます。
これを使用すると、 DATETIME
フィールドを独自のカスタムVARCHAR
フォーマットに変換できます。
例
DECLARE @Date DATETIME = '2016-09-05 00:01:02.333'
SELECT FORMAT(@Date, N'dddd, MMMM dd, yyyy hh:mm:ss tt')
2016年9月5日12:01:02 AM
引数
書式設定されているDATETIME
が2016-09-05 00:01:02.333
場合、次の図は、提供された引数の出力を示しています。
引数 | 出力 |
---|---|
yyyy | 2016年 |
yy | 16 |
んー | 9月 |
MM | 09 |
M | 9 |
dddd | 月曜 |
ddd | 月 |
DD | 05 |
d | 5 |
HH | 00 |
H | 0 |
hh | 12 |
h | 12 |
mm | 01 |
m | 1 |
SS | 02 |
s | 2 |
tt | AM |
t | A |
fff | 333 |
ff | 33 |
f | 3 |
また、 FORMAT()
関数に単一の引数を指定して、事前に書式設定された出力を生成することもできます。
DECLARE @Date DATETIME = '2016-09-05 00:01:02.333'
SELECT FORMAT(@Date, N'U')
2016年9月5日(月)4:01:02 AM
単一引数 | 出力 |
---|---|
D | 2016年9月5日月曜日 |
d | 2014年9月5日 |
F | 2016年9月5日12:01:02 AM |
f | 2016年9月5日月曜日12:01 |
G | 9/5/2016 12:01:02 AM |
g | 9/5/2016 12:01 AM |
M | 9月5日 |
O | 2016-09-05T00:01:02.3330000 |
R | 2016年9月5日(月)00:01:02 GMT |
s | 2016-09-05T00:01:02 |
T | 12:01:02 AM |
t | 12:01午前 |
U | 2016年9月5日(月)4:01:02 AM |
あなた | 2016-09-05 00:01:02Z |
Y | 2016年9月 |
注:上記のリストはen-US
文化を使用しています。 3番目のパラメータを使用してFORMAT()
異なるカルチャを指定できます。
DECLARE @Date DATETIME = '2016-09-05 00:01:02.333'
SELECT FORMAT(@Date, N'U', 'zh-cn')
2016年9月5日4:01:02
現在のDateTimeを取得する
組み込み関数GETDATE
とGETUTCDATE
それぞれ、現在の日付と時刻をタイムゾーンオフセットなしで返します。
両方の関数の戻り値は、SQL Serverのインスタンスが実行されているコンピュータのオペレーティングシステムに基づいています。
GETDATEの戻り値は、オペレーティングシステムと同じタイムゾーン内の現在の時刻を表します。 GETUTCDATEの戻り値は、現在のUTC時間を表します。
いずれの関数も、問合せのSELECT
句またはWHERE
句のブール式の一部として含めることができます。
例:
-- example query that selects the current time in both the server time zone and UTC
SELECT GETDATE() as SystemDateTime, GETUTCDATE() as UTCDateTime
-- example query records with EventDate in the past.
SELECT * FROM MyEvents WHERE EventDate < GETDATE()
現在の日時のさまざまなバリエーションを返す組み込み関数がいくつかあります:
SELECT
GETDATE(), --2016-07-21 14:27:37.447
GETUTCDATE(), --2016-07-21 18:27:37.447
CURRENT_TIMESTAMP, --2016-07-21 14:27:37.447
SYSDATETIME(), --2016-07-21 14:27:37.4485768
SYSDATETIMEOFFSET(),--2016-07-21 14:27:37.4485768 -04:00
SYSUTCDATETIME() --2016-07-21 18:27:37.4485768
期間の加算と減算のためのDATEADD
一般的な構文:
DATEADD (datepart , number , datetime_expr)
時間尺度を追加するには、 number
が正でなければなりません。時間尺度を減算するには、 number
が負でなければなりません。
例
DECLARE @now DATETIME2 = GETDATE();
SELECT @now; --2016-07-21 14:39:46.4170000
SELECT DATEADD(YEAR, 1, @now) --2017-07-21 14:39:46.4170000
SELECT DATEADD(QUARTER, 1, @now) --2016-10-21 14:39:46.4170000
SELECT DATEADD(WEEK, 1, @now) --2016-07-28 14:39:46.4170000
SELECT DATEADD(DAY, 1, @now) --2016-07-22 14:39:46.4170000
SELECT DATEADD(HOUR, 1, @now) --2016-07-21 15:39:46.4170000
SELECT DATEADD(MINUTE, 1, @now) --2016-07-21 14:40:46.4170000
SELECT DATEADD(SECOND, 1, @now) --2016-07-21 14:39:47.4170000
SELECT DATEADD(MILLISECOND, 1, @now)--2016-07-21 14:39:46.4180000
注: DATEADD
はdatepart
パラメータに略語も受け入れます。これらの略語の使用は、混乱する可能性があるため一般的には推奨されません( m
対mi
、 ww
対w
など)。
日付パーツ参照
日付と時刻関数で使用できるdatepart
値は次のとおりdatepart
。
datepart | 略語 |
---|---|
年 | yy、yyyy |
四半期 | qq、q |
月 | うーん |
日曜日 | dy、y |
日 | dd、d |
週間 | wk、ww |
平日 | dw、w |
時間 | hh |
分 | mi、n |
二番目 | ss、s |
ミリ秒 | ミズ |
マイクロ秒 | mcs |
ナノ秒 | ns |
注記 :略語の使用は、混乱する可能性があるため一般的には使用しないでください( m
対mi
、 ww
対w
など)。可能であれば( month
、 minute
、 week
、 weekday
など)、 datepart
表現の長いバージョンは明快さと可読性を促進します。
時間差を計算するためのDATEDIFF
一般的な構文:
DATEDIFF (datepart, datetime_expr1, datetime_expr2)
datetime_expr
がdatetime_expr2
基準として過去にある場合は正の数を返し、そうでない場合は負の数を返します。
例
DECLARE @now DATETIME2 = GETDATE();
DECLARE @oneYearAgo DATETIME2 = DATEADD(YEAR, -1, @now);
SELECT @now --2016-07-21 14:49:50.9800000
SELECT @oneYearAgo --2015-07-21 14:49:50.9800000
SELECT DATEDIFF(YEAR, @oneYearAgo, @now) --1
SELECT DATEDIFF(QUARTER, @oneYearAgo, @now) --4
SELECT DATEDIFF(WEEK, @oneYearAgo, @now) --52
SELECT DATEDIFF(DAY, @oneYearAgo, @now) --366
SELECT DATEDIFF(HOUR, @oneYearAgo, @now) --8784
SELECT DATEDIFF(MINUTE, @oneYearAgo, @now) --527040
SELECT DATEDIFF(SECOND, @oneYearAgo, @now) --31622400
注: DATEDIFF
では、 datepart
パラメータに略語も使用できます。これらの略語の使用は、混乱する可能性があるため一般的には推奨されません( m
対mi
、 ww
対w
など)。
DATEDIFF
を使用して、UTCとSQL Serverのローカル時刻との間のオフセットを特定することもできます。次のステートメントは、UTCと現地時間(タイムゾーンを含む)間のオフセットを計算するために使用できます。
select DATEDIFF(hh, getutcdate(), getdate()) as 'CentralTimeOffset'
DATEPART&DATENAME
DATEPART
は、指定されたdatetime式の指定されたdatepart
を数値として返します。
DATENAME
は、指定された日付の指定されたdatepart
を表す文字列を戻します。実際には、 DATENAME
は月または曜日の名前を取得するのに最も便利です。
日時式の年、月、または日を取得するための短縮形関数もいくつかあります。これはそれぞれのdatepart
単位でDATEPART
ように動作します。
構文:
DATEPART ( datepart , datetime_expr )
DATENAME ( datepart , datetime_expr )
DAY ( datetime_expr )
MONTH ( datetime_expr )
YEAR ( datetime_expr )
例:
DECLARE @now DATETIME2 = GETDATE();
SELECT @now --2016-07-21 15:05:33.8370000
SELECT DATEPART(YEAR, @now) --2016
SELECT DATEPART(QUARTER, @now) --3
SELECT DATEPART(WEEK, @now) --30
SELECT DATEPART(HOUR, @now) --15
SELECT DATEPART(MINUTE, @now) --5
SELECT DATEPART(SECOND, @now) --33
-- Differences between DATEPART and DATENAME:
SELECT DATEPART(MONTH, @now) --7
SELECT DATENAME(MONTH, @now) --July
SELECT DATEPART(WEEKDAY, @now) --5
SELECT DATENAME(WEEKDAY, @now) --Thursday
--shorthand functions
SELECT DAY(@now) --21
SELECT MONTH(@now) --7
SELECT YEAR(@now) --2016
注: DATEPART
とDATENAME
は、 datepart
パラメータに略語も受け入れます。これらの略語の使用は、混乱する可能性があるため一般的には推奨されません( m
対mi
、 ww
対w
など)。
一ヶ月の最後の日を取得する
DATEADD
とDATEDIFF
関数を使用すると、月の最後の日付を返すことができます。
SELECT DATEADD(d, -1, DATEADD(m, DATEDIFF(m, 0, '2016-09-23') + 1, 0))
-- 2016-09-30 00:00:00.000
EOMONTH
関数は、月の最後の日付を返すためのより簡潔な方法を提供し、月をオフセットするためのオプションのパラメーターを持っています。
SELECT EOMONTH('2016-07-21') --2016-07-31
SELECT EOMONTH('2016-07-21', 4) --2016-11-30
SELECT EOMONTH('2016-07-21', -5) --2016-02-29
DateTimeからDateを返す
DateTimeオブジェクトからDateを返す方法はたくさんあります
-
SELECT CONVERT(Date, GETDATE())
-
SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE()))
は、2016-07-21 00:00:00.000を返します。 -
SELECT CAST(GETDATE() AS DATE)
-
SELECT CONVERT(CHAR(10),GETDATE(),111)
-
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd')
オプション4と5は日付ではなく文字列を返します。
特定の日付に人の年齢を計算する関数を作成する
この関数は、2つの日時パラメータ、DOB、および年齢を確認する日付を取る
CREATE FUNCTION [dbo].[Calc_Age]
(
@DOB datetime , @calcDate datetime
)
RETURNS int
AS
BEGIN
declare @age int
IF (@calcDate < @DOB )
RETURN -1
-- If a DOB is supplied after the comparison date, then return -1
SELECT @age = YEAR(@calcDate) - YEAR(@DOB) +
CASE WHEN DATEADD(year,YEAR(@calcDate) - YEAR(@DOB)
,@DOB) > @calcDate THEN -1 ELSE 0 END
RETURN @age
END
2000年1月1日に生まれた人の今日の年齢を確認する
SELECT dbo.Calc_Age('2000-01-01',Getdate())
CROSS PLATFORM DATE OBJECT
Transact SQLでは、次のように[DATEFROMPARTS][1]
(または[DATETIMEFROMPARTS][1]
)関数を使用してオブジェクトをDate
(またはDateTime
)として定義できます。
DECLARE @myDate DATE=DATEFROMPARTS(1988,11,28)
DECLARE @someMoment DATETIME=DATEFROMPARTS(1988,11,28,10,30,50,123)
指定するパラメーターは、 DATEFROMPARTS
関数の年、月、日、 DATETIMEFROMPARTS
関数の場合は年、月、日、時、分、秒、ミリ秒を指定する必要があります。
これらのメソッドは有用であり、ホストマシンの領域、場所または日付形式の設定に応じてプレーンストリングを使用して日付(またはdatetime)を作成すると失敗する可能性があるため、使用する価値があります。
日付形式の拡張
日付形式 | SQL文 | サンプル出力 |
---|---|---|
YY-MM-DD | SELECT RIGHT(CONVERT(VARCHAR(10)、SYSDATETIME()、20)、8)AS [YY-MM-DD] SELECT [YY-MM-DD]のように、SELECT REPLACE(CONVERT(VARCHAR(8)、SYSDATETIME()、11)、 '/'、 ' - ' | 11-06-08 |
YYYY-MM-DD | SELECT CONVERT(VARCHAR(10)、SYSDATETIME()、120)AS [YYYY-MM-DD] SELECT [YYYY-MM-DD] ASPLAY(CONVERT(VARCHAR(10)、SYSDATETIME()、111)、 '/'、 ' - ' | 2011年06月08日 |
YYYY-MD | AS VARCHAR(2))+ ' - ' + CAST(DAY(SYSDATETIME())AS VARCHAR(2))+ ' - ' + CAST(DAY(SYSDATETIME())AS VARCHAR 2))AS [YYYY-MD] | 2011-6-8 |
YY-MD | 2)+ ' - ' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ ' - ' + CAST(DAY(SYSDATETIME() ))AS VARCHAR(2))AS [YY-MD] | 11-6-8 |
MD-YYYY | [VARCHAR(2))+ ' - ' + CAST(YEAR(SYSDATETIME())AS VARCHAR(2))+ ' - ' + CAST(日付(SYSDATETIME())AS VARCHAR 4))AS [MD-YYYY] | 6-8-2011 |
MD-YY | SELECT CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ ' - ' + CAST(DAY(SYSDATETIME())AS VARCHAR(2))+ ' - ' + RIGHT(CAST(YEAR(SYSDATETIME VARCHAR(4))、2)AS [MD-YY] | 6-8-11 |
DM-YYYY | (2))+ ' - ' + CAST(YEAR(SYSDATETIME())AS VARCHAR(2))+ ' - ' + CAST(月(SYSDATETIME())AS VARCHAR 4))AS [DM-YYYY] | 8-6-2011 |
DM-YY | SELECT CAST(DAY(SYSDATETIME())AS VARCHAR(2))+ ' - ' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ ' - ' + RIGHT(CAST(YEAR(SYSDATETIME VARCHAR(4))、2)AS [DM-YY] | 8-6-11 |
YY-MM | SELECT RIGHT(CONVERT(VARCHAR(7)、SYSDATETIME()、20)、5)AS [YY-MM] SELECT SUBSTRING(CONVERT(VARCHAR(10)、SYSDATETIME()、120)、3,5)AS [YY-MM] | 11-06 |
YYYY-MM | SELECT CONVERT(VARCHAR(7)、SYSDATETIME()、120)AS [YYYY-MM] | 2011-06 |
YY-M | 2)+ ' - ' + CAST(月(SYSDATETIME())AS VARCHAR(2))AS [YY-M] | 11-6 |
YYYY-M | [YYYY-M] AS [VARCHAR(4))+ ' - ' + CAST(月(SYSDATETIME())AS VARCHAR(2) | 2011-6 |
MM-YY | SELECT RIGHT(CONVERT(VARCHAR(8)、SYSDATETIME()、5)、5)AS [MM-YY] SELECT SUBSTRING(CONVERT(VARCHAR(8)、SYSDATETIME()、5)、4,5)AS [MM-YY] | 06-11 |
MM-YYYY | SELECT RIGHT(CONVERT(VARCHAR(10)、SYSDATETIME()、105)、7)AS [MM-YYYY] | 06-2011 |
M-YY | 2)AS [M-YY] AS VARCHAR(2))+ ' - ' + RIGHT(CAST(YEAR(SYSDATETIME())AS VARCHAR | 6-11 |
M-YYYY | [M-YYYY] AS VARCHAR(2))+ ' - ' + CAST(月(SYSDATETIME())AS VARCHAR(4) | 6-2011 |
MM-DD | SELECT CONVERT(VARCHAR(5)、SYSDATETIME()、10)AS [MM-DD] | 06-08 |
DD-MM | SELECT CONVERT(VARCHAR(5)、SYSDATETIME()、5)AS [DD-MM] | 08-06 |
MD | AS VARCHAR(2))+ [ - ] + CAST(DAY(SYSDATETIME())AS VARCHAR(2))AS [MD] | 6-8 |
DM | AS [DM] AS VARCHAR(2))+ ' - ' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2) | 8-6 |
M / D / YYYY | [VARCHAR(2))+ '/' + CAST(YEAR(SYSDATETIME())AS VARCHAR(2))+ '/' + CAST(日付(SYSDATETIME())AS VARCHAR 4))AS [M / D / YYYY] | 2011/06/8 |
M / D / YY | SELECT CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '/' + CAST(DAY(SYSDATETIME())AS VARCHAR(2))+ '/' + RIGHT(CAST(YEAR(SYSDATETIME())AS VARCHAR(4))、2)AS [M / D / YY] | 2011/06/08 |
D / M / YYYY | [VARCHAR(2))+ '/' + CAST(YEAR(SYSDATETIME())AS VARCHAR(2))+ '/' + CAST(月(SYSDATETIME())AS VARCHAR 4))AS [D / M / YYYY] | 2011/08/6 |
D / M / YY | SELECT CAST(DAY(SYSDATETIME())AS VARCHAR(2))+ '/' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '/' + RIGHT(CAST(YEAR(SYSDATETIME VARCHAR(4))、2)AS [D / M / YY] | 11/08/06 |
YYYY / M / D | AS VARCHAR(2))+ '/' + CAST(DAY(SYSDATETIME())AS VARCHAR(4))+ '/' + CAST(月(SYSDATETIME())AS VARCHAR 2))AS [YYYY / M / D] | 2011/6/8 |
YY / M / D | 2)+ '/' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '/' + CAST(DAY(SYSDATETIME() ))AS VARCHAR(2))AS [YY / M / D] | 11/6/8 |
MM / YY | SELECT RIGHT(CONVERT(VARCHAR(8)、SYSDATETIME()、3)、5)AS [MM / YY] | 06/11 |
MM / YYYY | SELECT RIGHT(CONVERT(VARCHAR(10)、SYSDATETIME()、103)、7)AS [MM / YYYY] | 06/2011 |
M / YY | 2)AS [M / YY] AS VARCHAR(2))+ '/' + RIGHT(CAST(YEAR(SYSDATETIME())AS VARCHAR | 6/11 |
M / YYYY | [M / YYYY] AS VARCHAR(2))+ '/' + CAST(YEAR(SYSDATETIME())AS VARCHAR(4) | 6/2011 |
YY / MM | SELECT CONVERT(VARCHAR(5)、SYSDATETIME()、11)AS [YY / MM] | 11/06 |
YYYY / MM | SELECT CONVERT(VARCHAR(7)、SYSDATETIME()、111)AS [YYYY / MM] | 2011/06 |
YY / M | 2)+ '/' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))AS [YY / M] | 11/6 |
YYYY / M | AS VARCHAR(2))AS [YYYY / M] + '/' + CAST(月(SYSDATETIME())AS VARCHAR(2) | 2011/6 |
MM / DD | SELECT CONVERT(VARCHAR(5)、SYSDATETIME()、1)AS [MM / DD] | 06/08 |
DD / MM | SELECT CONVERT(VARCHAR(5)、SYSDATETIME()、3)AS [DD / MM] | 08/06 |
M / D | [M / D] AS VARCHAR(2))+ '/' + CAST(日(SYSDATETIME())AS VARCHAR(2) | 6/8 |
D / M | [D / M] AS VARCHAR(2))+ '/' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2) | 8/6 |
MM.DD.YYYY | SELECT REPLACE(CONVERT(VARCHAR(10)、SYSDATETIME()、101)、 '/'、 '。')AS [MM.DD.YYYY] | 06.08.2011 |
MM.DD.YY | SELECT REPLACE(CONVERT(VARCHAR(8)、SYSDATETIME()、1)、 '/'、 '。')AS [MM.DD.YY] | 06.08.11 |
MDYYYY | SELECT CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '。' + CAST(DAY(SYSDATETIME())AS VARCHAR(2))+ '。' + CAST(YEAR(SYSDATETIME())AS VARCHAR(4))AS [MDYYYY] | 6.8.2011 |
MDYY | SELECT CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '。' + CAST(DAY(SYSDATETIME())AS VARCHAR(2))+ '。' + RIGHT(CAST(YEAR(SYSDATETIME())AS VARCHAR(4))、2)AS [MDYY] | 6.8.11 |
DD.MM.YYYY | SELECT CONVERT(VARCHAR(10)、SYSDATETIME()、104)AS [DD.MM.YYYY] | 08.06.2011 |
DD.MM.YY | SELECT CONVERT(VARCHAR(10)、SYSDATETIME()、4)AS [DD.MM.YY] | 08.06.11 |
DMYYYY | SELECT CAST(DAY(SYSDATETIME())AS VARCHAR(2))+ '。' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '。' + CAST(YEAR(SYSDATETIME())AS VARCHAR(4))AS [DMYYYY] | 8.6.2011 |
DMYY | SELECT CAST(DAY(SYSDATETIME())AS VARCHAR(2))+ '。' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '。' + RIGHT(CAST(YEAR(SYSDATETIME())AS VARCHAR(4))、2)AS [DMYY] | 8.6.11 |
YYYY.MD | SELECT CAST(YEAR(SYSDATETIME())AS VARCHAR(4))+ '。' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '。' + CAST(DAY(SYSDATETIME())AS VARCHAR(2))AS [YYYY.MD] | 2011.6.8 |
YY.MD | SELECT RIGHT(CAST(YEAR(SYSDATETIME())AS VARCHAR(4))、2)+ '。' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '。' + CAST(DAY(SYSDATETIME())AS VARCHAR(2))AS [YY.MD] | 11.6.8 |
MM.YYYY | SELECT RIGHT(CONVERT(VARCHAR(10)、SYSDATETIME()、104)、7)AS [MM.YYYY] | 06.2011 |
MM.YY | SELECT RIGHT(CONVERT(VARCHAR(8)、SYSDATETIME()、4)、5)AS [MM.YY] | 06.11 |
M.YYYY | SELECT CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '。' + CAST(YEAR(SYSDATETIME())AS VARCHAR(4))AS [M.YYYY] | 6.2011 |
M.YY | SELECT CAST(MONTH(SYSDATETIME())AS VARCHAR(2))+ '。' + RIGHT(CAST(YEAR(SYSDATETIME())AS VARCHAR(4))、2)AS [M.YY] | 6.11 |
YYYY.MM | SELECT CONVERT(VARCHAR(7)、SYSDATETIME()、102)AS [YYYY.MM] | 2011.06 |
YY.MM | SELECT CONVERT(VARCHAR(5)、SYSDATETIME()、2)AS [YY.MM] | 11.06 |
YYYY.M | SELECT CAST(YEAR(SYSDATETIME())AS VARCHAR(4))+ '。' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))AS [YYYY.M] | 2011.6 |
YY.M | SELECT RIGHT(CAST(YEAR(SYSDATETIME())AS VARCHAR(4))、2)+ '。' + CAST(MONTH(SYSDATETIME())AS VARCHAR(2))AS [YY.M] | 11.6 |
MM.DD | SELECT RIGHT(CONVERT(VARCHAR(8)、SYSDATETIME()、2)、5)AS [MM.DD] | 06.08 |
DD.MM | SELECT CONVERT(VARCHAR(5)、SYSDATETIME()、4)AS [DD.MM] | 08.06 |
MMDDYYYY | SELECT REPLACE(CONVERT(VARCHAR(10)、SYSDATETIME()、101)、 '/'、 '')AS [MMDDYYYY] | 06082011 |
MMDDYY | SELECT REPLACE(CONVERT(VARCHAR(8)、SYSDATETIME()、1)、 '/'、 '')AS [MMDDYY] | 060811 |
DDMMYYYY | SELECT REPLACE(CONVERT(VARCHAR(10)、SYSDATETIME()、103)、 '/'、 '')AS [DDMMYYYY] | 08062011 |
DDMMYY | SELECT REPLACE(CONVERT(VARCHAR(8)、SYSDATETIME()、3)、 '/'、 '')AS [DDMMYY] | 080611 |
MMYYYY | SELECT RIGHT(置換(VARCHAR(10)、SYSDATETIME()、103)、 '/'、 '')6)AS [MMYYYY] | 062011 |
MMYY | SELECT RIGHT(REPLACE(CONVERT(VARCHAR(8)、SYSDATETIME()、3)、 '/'、 '')、4)AS [MMYY] | 0611 |
YYYYMM | SELECT CONVERT(VARCHAR(6)、SYSDATETIME()、112)AS [YYYYMM] | 201106 |
YYMM | SELECT CONVERT(VARCHAR(4)、SYSDATETIME()、12)AS [YYMM] | 1106 |
月DD、YYYY | 2)+ '、' + DATENAME(YEAR、SYSDATETIME())AS [月DD、YYYY]選択された日付(MONTH、SYSDATETIME())+ '右+(' 0 '+ DATENAME(DAY、SYSDATETIME | 2011年6月8日 |
月YYYY | (月)、SYSDATETIME())、3)+ '' + DATENAME(YEAR、SYSDATETIME())AS [Mon YYYY] | 2011年6月 |
月YYYY | (月)、SYSDATETIME())+ '' + DATENAME(YEAR、SYSDATETIME())AS [月間YYYY] | 2011年6月 |
DD月間 | 2)+ 'DATENAME(MONTH、SYSDATETIME())AS [DD Month](DD月) | 6月8日 |
月DD | 2)AS [Month DD](月)、SYSDATETIME())+ '' + RIGHT( '0' + DATENAME(DAY、SYSDATETIME() | 6月8日 |
DD月間YY | CAST(YEAR(SYSDATETIME())AS VARCHAR(4))、2)CAST(DAY(SYSDATETIME())AS VARCHAR(2))+ '+ + DATENAME AS [DD月YY] | 08年11月8日 |
DD月間YYYY | [DD Month YYYY] + DATENAME(YEAR、SYSDATETIME())と同様に、右( '0' + DATENAME(DAY、SYSDATETIME())、2)+ 'DATENAME(月、SYSDATETIME())+ | 2011年6月8日 |
Mon-YY | SELECT REPLACE(RIGHT(CONVERT(VARCHAR(9)、SYSDATETIME()、6)、6)、 ''、 ' - ')AS [Mon-YY] | Jun-08 |
月-YYYY | SELECT REPLACE(RIGHT(CONVERT(VARCHAR(11)、SYSDATETIME()、106)、8)、 ''、 ' - ')AS [Mon-YYYY] | 2011年6月 |
DD-Mon-YY | SELECT [SYSDATETIME()、CONVERT(9)、SYSDATETIME()、6)、 ''、 ' - ')AS [DD-Mon-YY] | 08-Jun-11 |
DD-Mon-YYYY | SELECT [DD-Mon-YYYY]のように、SELECT REPLACE(CONVERT(VARCHAR(11)、SYSDATETIME()、106)、 ''、 ' - | 2011年6月8日 |