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

Cara mengambil tanggal dari MongoDB ObjectId menggunakan SQL

Ini dapat dicapai sebagai berikut (dengan asumsi objectId adalah string) di MySQL:

SELECT FROM_UNIXTIME(
    CAST(CONV(SUBSTR(objectId, 1, 8), 16, 10) AS UNSIGNED)
) FROM table

Ini berfungsi sebagai berikut:

  • SUBSTR(objectId, 1, 8) mengambil 8 karakter pertama dari objectId heksadesimal string
  • CONV(..., 16, 10) mengonversi angka heksadesimal menjadi angka desimal dan mengembalikannya sebagai string (yang mewakili stempel waktu UNIX)
  • CAST (...) AS UNSIGNED mengonversi string stempel waktu menjadi bilangan bulat yang tidak ditandatangani
  • FROM_UNIXTIME(...) mengonversi bilangan bulat stempel waktu menjadi tanggal

Perhatikan bahwa secara default tanggal yang ditampilkan akan didasarkan pada pengaturan zona waktu sistem Anda.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. perintah mongorestore mengganti catatan yang ada?

  2. mongodb-org konflik dengan mongodb-10gen-server

  3. Pengindeksan Geospasial Tidak ditemukan pemetaan untuk bidang dengan YAML

  4. Bagaimana cara menghapus semua string catatan di mongodb menggunakan php?

  5. Mongodb:array agregat bilangan bulat untuk setiap posisi array