টাইমস্ট্যাম্প ফাংশন
| নাম | বিবরণ |
CURRENT_TIMESTAMP
|
অনুরোধের সময় অনুযায়ী TIMESTAMP জেনারেট করে।
|
TIMESTAMP_TRUNC
|
প্রদত্ত গ্রানুলারিটিতে TIMESTAMP ট্রাঙ্কেট করে।
|
UNIX_MICROS_TO_TIMESTAMP
|
1970-01-01 00:00:00 UTC থেকে শুরু করে মাইক্রোসেকেন্ডের সংখ্যাকে TIMESTAMP-এ কনভার্ট করে
|
UNIX_MILLIS_TO_TIMESTAMP
|
1970-01-01 00:00:00 UTC থেকে শুরু করে মিলিসেকেন্ডের সংখ্যাকে TIMESTAMP-এ কনভার্ট করে
|
UNIX_SECONDS_TO_TIMESTAMP
|
1970-01-01 00:00:00 UTC থেকে শুরু করে সেকেন্ডের সংখ্যাকে TIMESTAMP-এ কনভার্ট করে
|
TIMESTAMP_ADD
|
TIMESTAMP-এ সময় বিরতি যোগ করে
|
TIMESTAMP_SUB
|
TIMESTAMP থেকে সময় বিরতি বিয়োগ করে
|
TIMESTAMP_TO_UNIX_MICROS
|
1970-01-01 00:00:00 UTC থেকে TIMESTAMP-কে মাইক্রোসেকেন্ডের সংখ্যায় কনভার্ট করে
|
TIMESTAMP_TO_UNIX_MILLIS
|
1970-01-01 00:00:00 UTC থেকে TIMESTAMP-কে মিলিসেকেন্ডের সংখ্যায় কনভার্ট করে
|
TIMESTAMP_TO_UNIX_SECONDS
|
1970-01-01 00:00:00 UTC থেকে শুরু করে TIMESTAMP-কে সেকেন্ডের সংখ্যায় কনভার্ট করে
|
TIMESTAMP_DIFF
|
দুটি TIMESTAMP-এর মধ্যে নির্দিষ্ট unit ব্যবধানের পূর্ণ সংখ্যা দেখায়।
|
TIMESTAMP_EXTRACT
|
TIMESTAMP থেকে নির্দিষ্ট part (যেমন, বছর, মাস, দিন) এক্সট্র্যাক্ট করে।
|
CURRENT_TIMESTAMP
সিনট্যাক্স:
current_timestamp() -> TIMESTAMP
বিবরণ:
অনুরোধের সময় input-এর শুরুতে টাইমস্ট্যাম্প পায় (1970-01-01 00:00:00 UTC থেকে শুরু করে মাইক্রোসেকেন্ডের
সংখ্যা হিসেবে ব্যাখ্যা করা হয়)।
এটি একটি কোয়েরির মধ্যে স্থিতিশীল এবং একাধিকবার কল করা হলে সর্বদা একই মান রিজলভ করবে।
TIMESTAMP_TRUNC
সিনট্যাক্স:
timestamp_trunc(timestamp: TIMESTAMP | BSON_TIMESTAMP, granularity: STRING[, timezone: STRING]) -> TIMESTAMP
বিবরণ:
প্রদত্ত গ্রানুলারিটি অনুযায়ী টাইমস্ট্যাম্প ট্রাঙ্কেট করে।
granularity আর্গুমেন্টটি অবশ্যই একটি স্ট্রিং এবং নিম্নলিখিতগুলির মধ্যে একটি হতে হবে:
microsecondmillisecondsecondminutehourdayweekweek([weekday])monthquarteryearisoyear
timezone আর্গুমেন্ট প্রদান করা হলে, ট্রাঙ্কেশন প্রদত্ত টাইমজোনের ক্যালেন্ডার সীমানার উপর ভিত্তি করে হবে (যেমন, দিন ট্রাঙ্কেশন প্রদত্ত টাইমজোনে মধ্যরাতে ট্রাঙ্কেট করবে)। ডেলাইট সেভিংস টাইম অনুযায়ী ট্রাঙ্কেশন করা হবে।
timezone প্রদান করা না হলে, UTC ক্যালেন্ডার
সীমার উপর ভিত্তি করে ট্রাঙ্কেশন করা হবে।
timezone আর্গুমেন্টটি tz ডেটাবেস থেকে টাইমজোনের স্ট্রিং উপস্থাপনা হতে হবে, যেমন America/New_York। GMT থেকে অফসেট নির্দিষ্ট করে
কাস্টম টাইম অফসেটও ব্যবহার করা যেতে পারে।
উদাহরণ:
timestamp |
granularity |
timezone |
timestamp_trunc(timestamp, granularity, timezone) |
|---|---|---|---|
| 2000-01-01 10:20:30:123456 UTC | "সেকেন্ড" | উল্লেখ নেই | ২০০১-০১-০১ ১০:২০:৩০ UTC |
| ১৯৯৭-০৫-৩১ ০৪:৩০:৩০ UTC | "দিন" | উল্লেখ নেই | ১৯৯৭-০৫-৩১ ০০:০০:০০ UTC |
| ১৯৯৭-০৫-৩১ ০৪:৩০:৩০ UTC | "দিন" | "America/Los_Angeles" | ১৯৯৭-০৫-৩০ ০৭:০০:০০ UTC |
| ২০০১-০৩-১৬ ০৪:০০:০০ UTC | "week(friday) | উল্লেখ নেই | ২০০১-০৩-১৬ ০০:০০:০০ UTC |
| 2001-03-23 04:00:00 UTC | "week(friday) | "America/Los_Angeles" | 2001-03-23 17:00:00 UTC |
| ২৪-০১-২০২৬ ২০:০০:০০ UTC | "মাস" | "GMT+০৬:৩২:৪৩" | 2026-01-01T06:32:43 UTC |
UNIX_MICROS_TO_TIMESTAMP
সিনট্যাক্স:
unix_micros_to_timestamp(input: INT64) -> TIMESTAMP
বিবরণ:
input-কে (1970-01-01 00:00:00 UTC থেকে মাইক্রোসেকেন্ডের সংখ্যা হিসেবে ব্যাখ্যা করা হয়)
TIMESTAMP-এ কনভার্ট করে। input-কে সঠিক TIMESTAMP-এ কনভার্ট করা না গেলে
error থ্রো করে।
উদাহরণ:
input |
unix_micros_to_timestamp(input) |
|---|---|
| ০ লিটার | ১৯৭০-০১-০১ ০০:০০:০০ UTC |
| 400123456L | ১৯৭০-০১-০১ ০০:০৬:৪০.১২৩৪৫৬ UTC |
| -১০০০০০০L | ১৯৬৯-১২-৩১ ২৩:৫৯:৫৯ UTC |
Node.js
const result = await db.pipeline() .collection("documents") .select( field("createdAtMicros").unixMicrosToTimestamp().as("createdAtString") ) .execute();
Web
const result = await execute(db.pipeline() .collection("documents") .select( field("createdAtMicros").unixMicrosToTimestamp().as("createdAtString") ) );
Swift
let result = try await db.pipeline() .collection("documents") .select([ Field("createdAtMicros").unixMicrosToTimestamp().as("createdAtString") ]) .execute()
Kotlin
val result = db.pipeline() .collection("documents") .select( field("createdAtMicros").unixMicrosToTimestamp().alias("createdAtString") ) .execute()
Java
Task<Pipeline.Snapshot> result = db.pipeline() .collection("documents") .select( field("createdAtMicros").unixMicrosToTimestamp().alias("createdAtString") ) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("documents") .select( Field.of("createdAtMicros") .unix_micros_to_timestamp() .as_("createdAtString") ) .execute() )
জাভা
Pipeline.Snapshot result = firestore .pipeline() .collection("documents") .select(unixMicrosToTimestamp(field("createdAtMicros")).as("createdAtString")) .execute() .get();
Go
snapshot := client.Pipeline(). Collection("documents"). Select(firestore.Fields( firestore.UnixMicrosToTimestamp(firestore.FieldOf("createdAtMicros")).As("createdAtString"), )). Execute(ctx)
UNIX_MILLIS_TO_TIMESTAMP
সিনট্যাক্স:
unix_millis_to_timestamp(input: INT64) -> TIMESTAMP
বিবরণ:
input-কে (1970-01-01 00:00:00 UTC থেকে শুরু করে মিলিসেকেন্ডের সংখ্যা হিসেবে ব্যাখ্যা করা হয়)
TIMESTAMP-এ কনভার্ট করে। input-কে সঠিক TIMESTAMP-এ কনভার্ট করা না গেলে
error থ্রো করে।
উদাহরণ:
input |
unix_millis_to_timestamp(input) |
|---|---|
| ০ লিটার | ১৯৭০-০১-০১ ০০:০০:০০ UTC |
| 4000123L | ১৯৭০-০১-০১ ০১:০৬:৪০.১২৩ UTC |
| -১০০০০০০L | ১৯৬৯-১২-৩১ ২৩:৪৩:২০ UTC |
Node.js
const result = await db.pipeline() .collection("documents") .select( field("createdAtMillis").unixMillisToTimestamp().as("createdAtString") ) .execute();
Web
const result = await execute(db.pipeline() .collection("documents") .select( field("createdAtMillis").unixMillisToTimestamp().as("createdAtString") ) );
Swift
let result = try await db.pipeline() .collection("documents") .select([ Field("createdAtMillis").unixMillisToTimestamp().as("createdAtString") ]) .execute()
Kotlin
val result = db.pipeline() .collection("documents") .select( field("createdAtMillis").unixMillisToTimestamp().alias("createdAtString") ) .execute()
Java
Task<Pipeline.Snapshot> result = db.pipeline() .collection("documents") .select( field("createdAtMillis").unixMillisToTimestamp().alias("createdAtString") ) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("documents") .select( Field.of("createdAtMillis") .unix_millis_to_timestamp() .as_("createdAtString") ) .execute() )
জাভা
Pipeline.Snapshot result = firestore .pipeline() .collection("documents") .select(unixMillisToTimestamp(field("createdAtMillis")).as("createdAtString")) .execute() .get();
Go
snapshot := client.Pipeline(). Collection("documents"). Select(firestore.Fields( firestore.UnixMillisToTimestamp(firestore.FieldOf("createdAtMillis")).As("createdAtString"), )). Execute(ctx)
UNIX_SECONDS_TO_TIMESTAMP
সিনট্যাক্স:
unix_seconds_to_timestamp(input: INT64) -> TIMESTAMP
বিবরণ:
input-কে (1970-01-01 00:00:00 UTC থেকে সেকেন্ডের সংখ্যা হিসেবে ব্যাখ্যা করা হয়)
TIMESTAMP-এ কনভার্ট করে। input-কে সঠিক TIMESTAMP-এ কনভার্ট করা না গেলে
error থ্রো করে।
উদাহরণ:
input |
unix_seconds_to_timestamp(input) |
|---|---|
| ০ লিটার | ১৯৭০-০১-০১ ০০:০০:০০ UTC |
| ৬০ লিটার | ১৯৭০-০১-০১ ০০:০১:০০ UTC |
| -৩০০ লিটার | ১৯৬৯-১২-৩১ ২৩:৫৫:০০ UTC |
Node.js
const result = await db.pipeline() .collection("documents") .select( field("createdAtSeconds").unixSecondsToTimestamp().as("createdAtString") ) .execute();
Web
const result = await execute(db.pipeline() .collection("documents") .select( field("createdAtSeconds").unixSecondsToTimestamp().as("createdAtString") ) );
Swift
let result = try await db.pipeline() .collection("documents") .select([ Field("createdAtSeconds").unixSecondsToTimestamp().as("createdAtString") ]) .execute()
Kotlin
val result = db.pipeline() .collection("documents") .select( field("createdAtSeconds").unixSecondsToTimestamp().alias("createdAtString") ) .execute()
Java
Task<Pipeline.Snapshot> result = db.pipeline() .collection("documents") .select( field("createdAtSeconds").unixSecondsToTimestamp().alias("createdAtString") ) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("documents") .select( Field.of("createdAtSeconds") .unix_seconds_to_timestamp() .as_("createdAtString") ) .execute() )
জাভা
Pipeline.Snapshot result = firestore .pipeline() .collection("documents") .select(unixSecondsToTimestamp(field("createdAtSeconds")).as("createdAtString")) .execute() .get();
Go
snapshot := client.Pipeline(). Collection("documents"). Select(firestore.Fields( firestore.UnixSecondsToTimestamp(firestore.FieldOf("createdAtSeconds")).As("createdAtString"), )). Execute(ctx)
TIMESTAMP_ADD
সিনট্যাক্স:
timestamp_add(timestamp: TIMESTAMP | BSON_TIMESTAMP, unit: STRING, amount: INT64) -> TIMESTAMP
বিবরণ:
timestamp থেকে unit-এর amount যোগ করে। amount আর্গুমেন্ট নেগেটিভ হতে পারে, সেক্ষেত্রে এটি TIMESTAMP_SUB-এর সমতুল্য।
unit আর্গুমেন্টটি অবশ্যই একটি স্ট্রিং এবং নিম্নলিখিতগুলির মধ্যে একটি হতে হবে:
microsecondmillisecondsecondminutehourday
ফলাফল হিসেবে পাওয়া টাইমস্ট্যাম্প TIMESTAMP রেঞ্জের মধ্যে না থাকলে সমস্যা দেখায়।
উদাহরণ:
timestamp |
unit |
amount |
timestamp_add(timestamp, unit, amount) |
|---|---|---|---|
| ২০২৫-০২-২০ ০০:০০:০০ UTC | "মিনিট" | 2L | 2025-02-20 00:02:00 UTC |
| ২০২৫-০২-২০ ০০:০০:০০ UTC | "ঘণ্টা" | -4L | 2025-02-19 20:00:00 UTC |
| ২০২৫-০২-২০ ০০:০০:০০ UTC | "দিন" | ৫ লাখ | 2025-02-25 00:00:00 UTC |
Node.js
const result = await db.pipeline() .collection("documents") .select( field("createdAt").timestampAdd("day", 3653).as("expiresAt") ) .execute();
Web
const result = await execute(db.pipeline() .collection("documents") .select( field("createdAt").timestampAdd("day", 3653).as("expiresAt") ) );
Swift
let result = try await db.pipeline() .collection("documents") .select([ Field("createdAt").timestampAdd(3653, .day).as("expiresAt") ]) .execute()
Kotlin
val result = db.pipeline() .collection("documents") .select( field("createdAt") .timestampAdd("day", 3653) .alias("expiresAt") ) .execute()
Java
Task<Pipeline.Snapshot> result = db.pipeline() .collection("documents") .select( field("createdAt").timestampAdd("day", 3653).alias("expiresAt") ) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("documents") .select(Field.of("createdAt").timestamp_add("day", 3653).as_("expiresAt")) .execute() )
জাভা
Pipeline.Snapshot result = firestore .pipeline() .collection("documents") .select(timestampAdd(field("createdAt"), "day", 3653).as("expiresAt")) .execute() .get();
Go
snapshot := client.Pipeline(). Collection("documents"). Select(firestore.Fields( firestore.TimestampAdd(firestore.FieldOf("createdAt"), "day", 3653).As("expiresAt"), )). Execute(ctx)
TIMESTAMP_SUB
সিনট্যাক্স:
timestamp_sub(timestamp: TIMESTAMP | BSON_TIMESTAMP, unit: STRING, amount: INT64) -> TIMESTAMP
বিবরণ:
timestamp থেকে unit-এর amount বিয়োগ করে। amount আর্গুমেন্ট নেগেটিভ হতে পারে, সেক্ষেত্রে এটি TIMESTAMP_ADD-এর সমতুল্য।
unit আর্গুমেন্টটি অবশ্যই একটি স্ট্রিং এবং নিম্নলিখিতগুলির মধ্যে একটি হতে হবে:
microsecondmillisecondsecondminutehourday
ফলাফল হিসেবে পাওয়া টাইমস্ট্যাম্প TIMESTAMP রেঞ্জের মধ্যে না থাকলে সমস্যা দেখায়।
উদাহরণ:
timestamp |
unit |
amount |
timestamp_sub(timestamp, unit, amount) |
|---|---|---|---|
| ২০২৬-০৭-০৪ ০০:০০:০০ UTC | "মিনিট" | ৪০ লিটার | 2026-07-03 23:20:00 UTC |
| ২০২৬-০৭-০৪ ০০:০০:০০ UTC | "ঘণ্টা" | -২৪L | ২০২৬-০৭-০৫ ০০:০০:০০ UTC |
| ২০২৬-০৭-০৪ ০০:০০:০০ UTC | "দিন" | ৩ লাখ | ২০২৬-০৭-০১ ০০:০০:০০ UTC |
Node.js
const result = await db.pipeline() .collection("documents") .select( field("expiresAt").timestampSubtract("day", 14).as("sendWarningTimestamp") ) .execute();
Web
const result = await execute(db.pipeline() .collection("documents") .select( field("expiresAt").timestampSubtract("day", 14).as("sendWarningTimestamp") ) );
Swift
let result = try await db.pipeline() .collection("documents") .select([ Field("expiresAt").timestampSubtract(14, .day).as("sendWarningTimestamp") ]) .execute()
Kotlin
val result = db.pipeline() .collection("documents") .select( field("expiresAt") .timestampSubtract("day", 14) .alias("sendWarningTimestamp") ) .execute()
Java
Task<Pipeline.Snapshot> result = db.pipeline() .collection("documents") .select( field("expiresAt").timestampSubtract("day", 14).alias("sendWarningTimestamp") ) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("documents") .select( Field.of("expiresAt") .timestamp_subtract("day", 14) .as_("sendWarningTimestamp") ) .execute() )
জাভা
Pipeline.Snapshot result = firestore .pipeline() .collection("documents") .select(timestampSubtract(field("expiresAt"), "day", 14).as("sendWarningTimestamp")) .execute() .get();
Go
snapshot := client.Pipeline(). Collection("documents"). Select(firestore.Fields( firestore.TimestampSubtract(firestore.FieldOf("expiresAt"), "day", 14).As("sendWarningTimestamp"), )). Execute(ctx)
TIMESTAMP_TO_UNIX_MICROS
সিনট্যাক্স:
timestamp_to_unix_micros(input: TIMESTAMP | BSON_TIMESTAMP) -> INT64
বিবরণ:
1970-01-01 00:00:00 UTC থেকে input-কে মাইক্রোসেকেন্ডের সংখ্যায় কনভার্ট করে।
মাইক্রোসেকেন্ডের শুরুতে রাউন্ড ডাউন করে নির্ভুলতার উচ্চ লেভেল ট্রাঙ্কেট করে।
উদাহরণ:
input |
timestamp_to_unix_micros(input) |
|---|---|
| ১৯৭০-০১-০১ ০০:০০:০০ UTC | ০ লিটার |
| ১৯৭০-০১-০১ ০০:০৬:৪০.১২৩৪৫৬ UTC | 400123456L |
| ১৯৬৯-১২-৩১ ২৩:৫৯:৫৯ UTC | -১০০০০০০L |
Node.js
const result = await db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixMicros().as("unixMicros") ) .execute();
Web
const result = await execute(db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixMicros().as("unixMicros") ) );
Swift
let result = try await db.pipeline() .collection("documents") .select([ Field("dateString").timestampToUnixMicros().as("unixMicros") ]) .execute()
Kotlin
val result = db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixMicros().alias("unixMicros") ) .execute()
Java
Task<Pipeline.Snapshot> result = db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixMicros().alias("unixMicros") ) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("documents") .select(Field.of("dateString").timestamp_to_unix_micros().as_("unixMicros")) .execute() )
জাভা
Pipeline.Snapshot result = firestore .pipeline() .collection("documents") .select(timestampToUnixMicros(field("dateString")).as("unixMicros")) .execute() .get();
Go
snapshot := client.Pipeline(). Collection("documents"). Select(firestore.Fields( firestore.TimestampToUnixMicros(firestore.FieldOf("dateString")).As("unixMicros"), )). Execute(ctx)
TIMESTAMP_TO_UNIX_MILLIS
সিনট্যাক্স:
timestamp_to_unix_millis(input: TIMESTAMP | BSON_TIMESTAMP) -> INT64
বিবরণ:
1970-01-01 00:00:00 UTC থেকে input-কে মিলিসেকেন্ডের সংখ্যায় কনভার্ট করে।
মিলি সেকেন্ডের শুরু পর্যন্ত রাউন্ড ডাউন করে নির্ভুলতার উচ্চ লেভেল ট্রাঙ্কেট করে।
উদাহরণ:
input |
timestamp_to_unix_millis(input) |
|---|---|
| ১৯৭০-০১-০১ ০০:০০:০০ UTC | ০ লিটার |
| ১৯৭০-০১-০১ ০১:০৬:৪০.১২৩ UTC | 4000123L |
| ১৯৬৯-১২-৩১ ২৩:৪৩:২০ | -১০০০০০০L |
Node.js
const result = await db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixMillis().as("unixMillis") ) .execute();
Web
const result = await execute(db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixMillis().as("unixMillis") ) );
Swift
let result = try await db.pipeline() .collection("documents") .select([ Field("dateString").timestampToUnixMillis().as("unixMillis") ]) .execute()
Kotlin
val result = db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixMillis().alias("unixMillis") ) .execute()
Java
Task<Pipeline.Snapshot> result = db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixMillis().alias("unixMillis") ) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("documents") .select(Field.of("dateString").timestamp_to_unix_millis().as_("unixMillis")) .execute() )
জাভা
Pipeline.Snapshot result = firestore .pipeline() .collection("documents") .select(timestampToUnixMillis(field("dateString")).as("unixMillis")) .execute() .get();
Go
snapshot := client.Pipeline(). Collection("documents"). Select(firestore.Fields( firestore.TimestampToUnixMillis(firestore.FieldOf("dateString")).As("unixMillis"), )). Execute(ctx)
TIMESTAMP_TO_UNIX_SECONDS
সিনট্যাক্স:
timestamp_to_unix_seconds(input: TIMESTAMP | BSON_TIMESTAMP) -> INT64
বিবরণ:
1970-01-01 00:00:00 UTC থেকে শুরু করে input-কে সেকেন্ডের সংখ্যায় কনভার্ট করে।
সেকেন্ডের শুরুতে রাউন্ড ডাউন করে নির্ভুলতার উচ্চ লেভেল ট্রাঙ্কেট করে।
উদাহরণ:
input |
timestamp_to_unix_seconds(input) |
|---|---|
| ১৯৭০-০১-০১ ০০:০০:০০ UTC | ০ লিটার |
| ১৯৭০-০১-০১ ০০:০১:০০ UTC | ৬০ লিটার |
| ১৯৬৯-১২-৩১ ২৩:৫৫:০০ UTC | -৩০০ লিটার |
Node.js
const result = await db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixSeconds().as("unixSeconds") ) .execute();
Web
const result = await execute(db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixSeconds().as("unixSeconds") ) );
Swift
let result = try await db.pipeline() .collection("documents") .select([ Field("dateString").timestampToUnixSeconds().as("unixSeconds") ]) .execute()
Kotlin
val result = db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixSeconds().alias("unixSeconds") ) .execute()
Java
Task<Pipeline.Snapshot> result = db.pipeline() .collection("documents") .select( field("dateString").timestampToUnixSeconds().alias("unixSeconds") ) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("documents") .select(Field.of("dateString").timestamp_to_unix_seconds().as_("unixSeconds")) .execute() )
জাভা
Pipeline.Snapshot result = firestore .pipeline() .collection("documents") .select(timestampToUnixSeconds(field("dateString")).as("unixSeconds")) .execute() .get();
Go
snapshot := client.Pipeline(). Collection("documents"). Select(firestore.Fields( firestore.TimestampToUnixSeconds(firestore.FieldOf("dateString")).As("unixSeconds"), )). Execute(ctx)
TIMESTAMP_DIFF
সিনট্যাক্স:
timestamp_diff(end: TIMESTAMP | BSON_TIMESTAMP, start: TIMESTAMP | BSON_TIMESTAMP, unit: STRING) -> INT64
বিবরণ:
দুটি TIMESTAMP-এর মধ্যে নির্দিষ্ট unit ব্যবধানের পূর্ণ সংখ্যা দেখায়।
end,start-এর আগে হলে নেগেটিভ ভ্যালু দেখায়।- যেকোনও ভগ্নাংশ ইউনিটকে ট্রাঙ্কেট করে। যেমন,
timestamp_diff("2021-01-01 00:00:01", "2021-01-01 00:00:00", "minute")-এর জন্য0রিটার্ন করে।
unit আর্গুমেন্টটি অবশ্যই একটি স্ট্রিং এবং নিম্নলিখিতগুলির মধ্যে একটি হতে হবে:
microsecondmillisecondsecondminutehourday
উদাহরণ:
end |
start |
unit |
timestamp_diff(end, start, unit) |
|---|---|---|---|
| ২০২৬-০৭-০৪ ০০:০১:০০ UTC | ২০২৬-০৭-০৪ ০০:০০:০০ UTC | "সেকেন্ড" | ৬০ লিটার |
| ২০২৬-০৭-০৪ ০০:০০:০০ UTC | ২০২৬-০৭-০৫ ০০:০০:০০ UTC | "দিন" | -১ লিটার |
| ২০২৬-০৭-০৪ ০০:০০:৫৯ UTC | ২০২৬-০৭-০৪ ০০:০০:০০ UTC | "মিনিট" | ০ লিটার |
TIMESTAMP_EXTRACT
সিনট্যাক্স:
timestamp_extract(timestamp: TIMESTAMP | BSON_TIMESTAMP, part: STRING[, timezone: STRING]) -> INT64
বিবরণ:
timestamp থেকে নির্দিষ্ট part (যেমন, বছর, মাস, দিন) এক্সট্র্যাক্ট করে।
part আর্গুমেন্টটি অবশ্যই একটি স্ট্রিং এবং নিম্নলিখিতগুলির মধ্যে একটি হতে হবে:
microsecondmillisecondsecondminutehourdaydayofweek: ১ (রবিবার) থেকে ৭ (শনিবার)-এর মধ্যে কোনও ভ্যালু দেখায়।dayofyearweek: বছরের সপ্তাহের সংখ্যা দেখায়, বছরের প্রথম রবিবার থেকে ১ দিয়ে শুরু হয়।week([weekday]): নির্দিষ্টweekdayথেকে শুরু করে বছরের সপ্তাহের সংখ্যা দেখায়।monthquarteryearisoweek: ISO 8601 সপ্তাহের সংখ্যা দেখায়।isoyear: ISO 8601 সপ্তাহ-নম্বরিং বছর রিটার্ন করে।
timezone আর্গুমেন্ট প্রদান করা হলে, এক্সট্র্যাকশন প্রদত্ত টাইমজোনের ক্যালেন্ডারের উপর ভিত্তি করে হবে। এক্সট্র্যাকশন ডেলাইট সেভিংস টাইম মেনে চলবে।
timezone প্রদান করা না হলে, UTC-এর উপর ভিত্তি করে এক্সট্র্যাক্ট করা হবে।
timezone আর্গুমেন্টটি টাইমজোন ডেটাবেস থেকে টাইমজোনের একটি স্ট্রিং উপস্থাপনা হওয়া উচিত, উদাহরণস্বরূপ America/New_York। এছাড়াও, GMT থেকে অফসেট নির্দিষ্ট করে
কাস্টম টাইম অফসেট ব্যবহার করা যেতে পারে।
উদাহরণ:
timestamp |
part |
timezone |
timestamp_extract(timestamp, part, timezone) |
|---|---|---|---|
| ২০২৫-০২-২০ ১০:২০:৩০ UTC | "বছর" | উল্লেখ নেই | ২০২৫ |
| ২০২৫-০২-২০ ১০:২০:৩০ UTC | "দিন" | উল্লেখ নেই | 20 |
| ২০২৫-১২-৩১ ২৩:৫৯:৫৯ UTC | "বছর" | "Asia/Tokyo" | 2026 |