Following my query :
SELECT SQRT((D_o_latitude - T_s_lat)^2+(D_o_longitude - T_s_long)^2)/0.00001 FROM [datasetName.tableName]
I am getting the error as Error: Argument type mismatch in function SUBTRACT:'D_o_latitude' is type string, 'T_s_lat' is type string
So Let me know can we convert the string type to float in the query some thing like casting the data type, I can not change the datatype
ARRAY and STRUCT or RECORD are complex data types to represent nested and repeated fields. BigQuery Nested and Repeated Fields. Nested Fields. A STRUCT or RECORD contains ordered fields each with a type and field name.
With standard SQL you can use CAST function, eg. cast(numStringColumn as int64)
. Look out for standard SQL type names, as they aren't exactly same as legacy SQL.
Under legacy SQL, you can cast types in BigQuery using the following functions: INTEGER()
, STRING()
, BOOLEAN()
TIMESTAMP()
, and FLOAT()
.
Use cast() for standard SQL (see opensourcegeek's answer).
In your case, you could write:
SELECT SQRT((INTEGER(D_o_latitude) - T_s_lat)^2+(INTEGER(D_o_longitude) - T_s_long)^2)/0.00001 FROM [datasetName.tableName]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With