MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

3 Cara Mengonversi Tanggal menjadi String di MongoDB

MongoDB memiliki tipe Date BSON yang memungkinkan Anda untuk menyimpan tanggal sebagai tanggal.

Anda juga dapat menyimpan tanggal sebagai string, jika itu yang Anda butuhkan.

Mengambil langkah lebih jauh, Anda juga dapat mengonversi Tanggal menjadi string.

Artikel ini menyajikan tiga cara untuk mengonversi Tanggal menjadi string di MongoDB.

Contoh Data

Contoh dalam artikel ini menggunakan dokumen berikut dalam koleksi yang disebut cats :

{
	"_id" : 1,
	"name" : "Scratch",
	"born" : ISODate("2021-01-03T23:30:15.123Z")
}

Perhatikan bahwa born bidang adalah Tanggal. Contoh berikut menggunakan berbagai operator saluran agregasi untuk mengubah bidang ini menjadi string.

$dateToString Operator

$dateToString operator pipa agregasi adalah tempat yang paling jelas untuk memulai.

Sesuai dengan namanya, tujuan utamanya adalah untuk mengonversi Tanggal menjadi string (dan mengembalikan hasilnya).

Contoh:

db.cats.aggregate(
   [
     {
       $project: {
         _id: 0,
          dateString: { $dateToString: { format: "%Y-%m-%dT%H:%M:%S.%LZ", date: "$born" } }
       }
     }
   ]
)

Hasil:

{ "dateString" : "2021-01-03T23:30:15.123Z" }

Di sini, saya menyediakan string format untuk menentukan format string yang dihasilkan. Dalam hal ini, saya menggunakan %Y-%m-%dT%H:%M:%S.%LZ , yang merupakan format default. Jika saya tidak menentukan format, ini adalah format yang akan digunakan.

Anda dapat memindahkan penentu format tersebut agar sesuai dengan string yang dihasilkan.

Misalnya, kita bisa melakukan ini:

db.cats.aggregate(
   [
     {
       $project: {
         _id: 0,
          dateString: { $dateToString: { format: "%d/%m/%Y", date: "$born" } }
       }
     }
   ]
)

Hasil:

{ "dateString" : "03/01/2021" }

Lihat MongoDB $dateToString untuk informasi lebih lanjut tentang operator ini.

$toString Operator

$toString operator pipa agregasi mirip dengan $dateToString , kecuali dapat mengonversi dari berbagai jenis – tidak hanya terbatas pada mengonversi dari Tanggal.

Tetapi untuk tujuan kami, kami mengonversi dari Tanggal.

Contoh:

db.cats.aggregate(
   [
     {
       $project: {
         _id: 0,
          dateString: { $toString: "$born" }
       }
     }
   ]
)

Hasil:

{ "dateString" : "2021-01-03T23:30:15.123Z" }

Operator ini tidak memberi kami opsi untuk menentukan format, sehingga format dikembalikan apa adanya.

Lihat MongoDB $toString untuk informasi dan contoh lebih lanjut.

The $convert Operator

$convert operator secara khusus dirancang untuk mengkonversi antara satu jenis dan jenis lainnya.

input parameter menentukan bidang yang ingin Anda konversi, dan to parameter menentukan jenis yang ingin Anda ubah.

Contoh:

db.cats.aggregate(
  [
    {
      $project:
        { 
          result: 
          {
            $convert: { 
              input: "$born", 
              to: "string",
              onError: "An error occurred",
              onNull: "Input was null or empty" 
            }
          }
        }
    }
  ]
)

Hasil:

{ "_id" : 1, "result" : "2021-01-03T23:30:15.123Z" }

Perhatikan bahwa $convert operator juga menerima onError dan onNull parameter, yang memungkinkan kami memberikan pesan untuk digunakan jika terjadi kesalahan atau null nilai. Ini mencegah seluruh operasi agregasi terhenti, dan memungkinkan pesan kesalahan yang mudah digunakan dalam dokumen keluaran.

Lihat MongoDB $convert untuk informasi dan contoh lebih lanjut.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kelompokkan dan hitung berdasarkan bulan

  2. Aplikasi Heroku mogok setelah MongoDB diperbarui ke 3.0

  3. Bagaimana saya bisa menerapkan izin tingkat bidang untuk MongoDB?

  4. Menangani Custom BSON Marshaling

  5. Mengkloning Instans MongoDB atau Kumpulan Replika