Serta saran yang sudah diberikan, ada satu kemungkinan lain yang dapat saya simpulkan dari pertanyaan Anda:
- Anda masih ingin hasilnya menjadi kencan
- Tetapi Anda ingin 'membuang' Hari, Jam, dll.
- Meninggalkan satu tahun / bulan hanya bidang tanggal
SELECT
DATEADD(MONTH, DATEDIFF(MONTH, 0, <dateField>), 0) AS [year_month_date_field]
FROM
<your_table>
Ini mendapatkan jumlah bulan penuh dari tanggal dasar (0) dan kemudian menambahkannya ke tanggal dasar itu. Jadi pembulatan ke bulan di mana tanggal tersebut masuk
CATATAN: Dalam SQL Server 2008, Anda masih akan memiliki TIME terlampir sebagai 00: 00: 00.000 Ini tidak persis sama dengan "menghapus" notasi hari dan waktu sama sekali. Juga HARI diatur ke yang pertama. mis. 2009-10-01 00: 00: 00.000
sumber
Anda mungkin ingin memeriksa situs web ini: http://anubhavg.wordpress.com/2009/06/11/how-to-format-datetime-date-in-sql-server-2005/
sumber
sumber
hasilnya akan seperti: 'Desember 2013'
sumber
Ada dua fungsi SQL untuk melakukannya:
Lihat dokumentasi tertaut untuk detailnya.
sumber
Ini bisa membantu juga.
atau
atau
sumber
mari kita tulis seperti ini:
YEAR(anySqlDate)
danMONTH(anySqlDate)
. Cobalah denganYEAR(GETDATE())
misalnya.sumber
sumber
Saya menafsirkan pertanyaan Anda dengan dua cara.
a) Anda hanya perlu Bulan & Tahun secara terpisah dalam hal ini jawabannya
b)
Anda ingin menampilkan dari tanggal tertentu katakan
'2009-11-24 09:01:55.483'
dalam format MONTH.YEAR . Jadi hasilnya harus seperti11.2009
pada kasus ini.Jika memang seharusnya demikian maka coba ini (di antara alternatif lain)
sumber
Beberapa basis data seperti
MS ACCESS
atauRODBC
mungkin tidak mendukungSQL SERVER
fungsi, tetapi untuk basis data apa pun yang memilikiFORMAT
fungsi, Anda dapat melakukan ini:sumber
sumber
memberi Anda misalnya 201601 jika Anda ingin hasil enam digit
sumber
Coba ini
misalnya.
sumber
Coba ini:
Portugis
Hasil: maio 2019
Inggris
Hasil: Mei 2019
Jika Anda ingin menggunakan bahasa lain, ubah ' pt-pt ' atau ' en-US ' ke salah satu tautan ini
sumber
Saya memiliki persyaratan khusus untuk melakukan sesuatu yang serupa di mana itu akan menunjukkan bulan-tahun yang dapat dilakukan dengan yang berikut:
SELECT DATENAME(month, GETDATE()) + '-' + CAST(YEAR(GETDATE()) AS nvarchar) AS 'Month-Year'
Dalam kasus khusus saya, saya perlu menurunkannya menjadi 3 bulan bulan dengan tahun 2 digit, terlihat seperti ini:
SELECT LEFT(DATENAME(month, GETDATE()), 3) + '-' + CAST(RIGHT(YEAR(GETDATE()),2) AS nvarchar(2)) AS 'Month-Year'
sumber
Mencoba
SELECT CONCAT(month(datefield), '.', year(datefield)) FROM YOURTABLE;
sumber
Basis data saya tidak mendukung sebagian besar fungsi di atas namun saya menemukan bahwa ini berfungsi:
SELECT * FROM table WHERE SUBSTR(datetime_column, starting_position, number_of_strings)=required_year_and_month;
sebagai contoh:
SELECT SUBSTR(created, 1,7) FROM table;
mengembalikan tahun dan bulan dalam format "yyyy-mm"
sumber
Dapatkan Bulan & Tahun Dari Tanggal
sumber
Output: Mar-2019
sumber
Permintaan: -
Select datename(m,GETDATE())+'-'+cast(datepart(yyyy,GETDATE()) as varchar) as FieldName
Output: - Januari-2019
field tanggal umum dapat kita gunakan
sumber
Untuk hasil: "YYYY-MM"
sumber
membuat saya hasil yang diinginkan tanggal diformat sebagai 07 Mar 2018
Kolom saya 'transfer_date' adalah kolom tipe datetime dan saya menggunakan SQL Server 2017 di biru
sumber
pilih CONCAT (MONTH (GETDATE ()), '.', YEAR (GETDATE ()))
Output: 5.2020
pilih CONCAT (DATENAME (MONTH, GETDATE ()), '.', YEAR (GETDATE ()))
Output: Mei.2020
sumber