SQL ServerのDateフィールドからMonth.Yearにのみアクセスする必要があります。
SQL ServerのDateフィールドからMonth.Yearにのみアクセスする必要があります。
回答:
うまくすでに与えられた提案のように、私はあなたの質問から推測することができます一つの他のpossiblityがあります:
-あなたはまだ結果が日付になりたい
-しかし、あなたは「廃棄」日、時間、などにしたい
-年を残して/月日付フィールドのみ
SELECT
DATEADD(MONTH, DATEDIFF(MONTH, 0, <dateField>), 0) AS [year_month_date_field]
FROM
<your_table>
これは、基準日(0)から月数を取得し、それらをその基準日に追加します。したがって、日付が含まれている月に切り捨てられます。
注:SQL Server 2008では、TIMEは00:00:00.000としてアタッチされたままになります。これは、日付と時刻の表記を完全に「削除する」こととはまったく同じではありません。また、DAYは最初に設定されています。例:2009-10-01 00:00:00.000
SELECT convert(varchar(7), getdate(), 126)
あなたはこのウェブサイトをチェックしたいかもしれません:http : //anubhavg.wordpress.com/2009/06/11/how-to-format-datetime-date-in-sql-server-2005/
SELECT DATEPART(yy, DateVal)
SELECT DATEPART(MM, DateVal)
SELECT DATENAME(MM, DateVal)
datename(m,column)+' '+cast(datepart(yyyy,column) as varchar) as MonthYear
出力は「2013年12月」のようになります。
このように書いてみましょう:YEAR(anySqlDate)
とMONTH(anySqlDate)
。YEAR(GETDATE())
たとえばでそれを試してください。
私はあなたの質問を二つの方法で解釈しています。
a)月と年だけが別々に必要な場合、ここに答えがあります
select
[YEAR] = YEAR(getdate())
,[YEAR] = DATEPART(YY,getdate())
, [MONTH] = month(getdate())
,[MONTH] = DATEPART(mm,getdate())
,[MONTH NAME] = DATENAME(mm, getdate())
b)
たとえば'2009-11-24 09:01:55.483'
、MONTH.YEAR形式で特定の日付から表示したいとします。したがって、出力は11.2009
この場合のようになります。
それが事実であると思われる場合は、これを試してください(他の選択肢の中で)
select [Month.Year] = STUFF(CONVERT(varchar(10), GETDATE(),104),1,3,'')
RIGHT(CONVERT(VARCHAR(10), reg_dte, 105), 7)
これを試して:
ポルトガル語
SELECT format(dateadd(month, 0, getdate()), 'MMMM', 'pt-pt') + ' ' + convert(varchar(10),year(getdate()),100)
結果:maio 2019
英語
SELECT format(dateadd(month, 0, getdate()), 'MMMM', 'en-US') + ' ' + convert(varchar(10),year(getdate()),100)
結果:2019年5月
私は次のようにして実行できる月-年を示すような同様のことをするための特定の要件がありました:
SELECT DATENAME(month, GETDATE()) + '-' + CAST(YEAR(GETDATE()) AS nvarchar) AS 'Month-Year'
私の特定のケースでは、次のように、2桁の年を含む3文字の月の省略形にする必要があります。
SELECT LEFT(DATENAME(month, GETDATE()), 3) + '-' + CAST(RIGHT(YEAR(GETDATE()),2) AS nvarchar(2)) AS 'Month-Year'
SELECT REPLACE(RIGHT(CONVERT(VARCHAR(11), GETDATE(), 106), 8), ' ', '-')
出力:2019年3月
クエリ:- Select datename(m,GETDATE())+'-'+cast(datepart(yyyy,GETDATE()) as varchar) as FieldName
出力:-2019年1月
使用できる一般的な日付フィールド
datename(m,<DateField>)+' '+cast(datepart(yyyy,<DateField>) as varchar) as FieldName
結果:「YYYY-MM」
SELECT cast(YEAR(<DateColumn>) as varchar) + '-' + cast(Month(<DateColumn>) as varchar)
select convert(varchar(11), transfer_date, 106)
2018年3月7日としてフォーマットされた日付の私の望ましい結果を得ました
私の列 'transfer_date'は日時タイプの列であり、AzureでSQL Server 2017を使用しています
CONCAT(MONTH(GETDATE())、 '。'、YEAR(GETDATE()))を選択します
出力:5.2020
CONCAT(DATENAME(MONTH、GETDATE())、 '。'、YEAR(GETDATE()))を選択します
出力:2020年5月