ToMicros

ToMicros( value )
ToMicros( value )
ToMicros( value )
ToMicros( value )
to_micros( value )
ToMicros( value )
ToMicros( value )

Description

The ToMicros function converts a value to the number of microseconds since Unix epoch (midnight, January 1, 1970), if possible.

Attempting to convert a value to a number of microseconds which has no numeric representation results in an "invalid argument" error.

Parameters

Argument Type Definition and Requirements

value

Any

The value to attempt to convert to a number of microseconds since Unix epoch.

If you provide a Number, it is interpreted as the number of microseconds since Unix epoch.

Returns

A Number representing the number of microseconds since Unix epoch.

Examples

The following query calls ToMicros twice:

  1. To convert 1 second after Unix epoch into microseconds.

  2. To convert the current transaction time into microseconds.

try
{
    Value result = await client.Query(
        Arr(
            ToMicros(Epoch(1, "second")),
            ToMicros(Time("2020-07-06T12:34:56.789Z"))
        )
    );

    Console.WriteLine(result);
}
catch (Exception e)
{
    Console.WriteLine($"ERROR: {e.Message}");
}
Arr(LongV(1000000), LongV(1594038896789000))
result, err := client.Query(
	f.Arr{
		f.ToMicros(f.Epoch(1, "second")),
		f.ToMicros(f.Time("2020-07-06T12:34:56.789Z")),
	})

if err != nil {
	fmt.Fprintln(os.Stderr, err)
} else {
	fmt.Println(result)
}
[1000000 1594038896789000]
System.out.println(
    client.query(
        Arr(
            ToMicros(Epoch(1, "second")),
            ToMicros(Time("2020-07-06T12:34:56.789Z"))
        )
    ).get());
[1000000, 1594038896789000]
client.query([
  q.ToMicros(q.Epoch(1, 'second')),
  q.ToMicros(q.Time('2020-07-06T12:34:56.789Z')),
])
.then((ret) => console.log(ret))
.catch((err) => console.error('Error: %s', err))
[ 1000000, 1594038896789000 ]
result = client.query(
  [
    q.to_micros(q.epoch(1, 'second')),
    q.to_micros(q.time('2020-07-06T12:34:56.789Z')),
  ]
)
print(result)
[1000000, 1594038896789000]
try {
  println(Await.result(
  client.query(
    Arr(
      ToMicros(Epoch(1, "second")),
      ToMicros(Time("2020-07-06T12:34:56.789Z"))
    )
  ),
  5.seconds
))} catch {
  case unknown: Throwable => println("Error: " + unknown.getMessage())
}
[1000000, 1594038896789000]
[
  ToMicros(Epoch(1, 'second')),
  ToMicros(Time('2020-07-06T12:34:56.789Z'))
]
[ 1000000, 1594038896789000 ]

Was this article helpful?

We're sorry to hear that.
Tell us how we can improve!
Visit Fauna's Discourse forums or email docs@fauna.com

Thank you for your feedback!