BSON_
On this page
Extracts the value for the specified key from the BSON data, converts it to the SingleStore BIGINT type, and returns the value.
Syntax
BSON_EXTRACT_BIGINT(<input> [, path_key_1, path_key_2,.., path_key_n])Arguments
- 
          <input>: A valid BSON document or an expression that evaluates to a valid BSON document.
- 
          <path>: A comma-separated list of dictionary keys or array positions (zero-based index).
Return Type
SingleStore BIGINT type.
Remarks
- 
        The BSON INT32andINT64types are returned as is.
- 
        BSON DOUBLEandDECIMAL128types are typecast using the Intel RDFP Library.If the converted value is out-of-range, NULLis returned.
- 
        BSON_returnsEXTRACT_ BIGINT() NULLif:- 
            The extracted value is out-of-range or a non-numeric BSON type 
- 
            The specified path does not exist 
 
- 
            
Examples
Note: The following examples explicitly cast string to BSON for clarity.
The following example extracts a BSON INT32 type:
SELECT BSON_EXTRACT_BIGINT('{"a":{"b":10}}':>BSON, 'a', 'b') AS Result;
+--------+
| Result |
+--------+
|     10 |
+--------+The following example extracts a BSON INT64 type:
SELECT BSON_EXTRACT_BIGINT('{"a":{"b":{"$numberLong":"10"}}}':>BSON, 'a', 'b') AS Result;
+--------+
| Result |
+--------+
|     10 |
+--------+The following examples extract a BSON DOUBLE type:
SELECT BSON_EXTRACT_BIGINT('{"a":{"b":{"$numberDouble":"922337203685477586.9"}}}':>BSON, 'a', 'b') AS Result;
+--------------------+
| Result             |
+--------------------+
| 922337203685477632 |
+--------------------+SELECT BSON_EXTRACT_BIGINT('{"a":{"b":{"$numberDouble":"NaN"}}}':>BSON, 'a', 'b') AS Result;
+--------+
| Result |
+--------+
|   NULL |
+--------+The following example extracts a BSON DECIMAL type:
SELECT BSON_EXTRACT_BIGINT('{"a":{"b":{"$numberDecimal":"-9223372036854775807.9"}}}':>BSON, 'a', 'b')AS Result;
+----------------------+
| Result               |
+----------------------+
| -9223372036854775808 |
+----------------------+Last modified: April 2, 2024