私の主な目標は、IPv4形式のIPアドレスの範囲を整数に変換して除外することです。例えば、192.168.1.1から192.168.1.100までのIP範囲をフィルタリングしたいのですが、まずそれらを整数に変換する必要があります:3232235777から3232235876へBigQueryでIPアドレスを整数に変換するにはどうすればよいですか?
BigQueryでこれを行う方法はありますか(標準SQL)?私は、BigQueryのドキュメントを見てきましたが、NET.IP_FROM_STRING()
とNET.IPV4_TO_INT64()
機能の私の組み合わせは、このエラーを投げ続ける:No matching signature for function NET.IPV4_TO_INT64 for argument types: STRING.
SELECT addr_str, ip_from_string, FORMAT("0x%X",
NET.IPV4_TO_INT64(ip_from_string)) AS ipv4_to_int64
FROM
(
SELECT addr_str, FORMAT("%T", NET.IP_FROM_STRING(addr_str)) AS ip_from_string
FROM UNNEST(['192.168.1.1','192.168.1.100']) AS addr_str
)
ありがとう、Elliot。私は「FORMAT」機能と呼んでいますが、それは単にGoogleのドキュメントのhahaにあったからです。 – dnaeye