On Snowflake, all of our listings come with their own unique UDTF (User Defined Table Functions) that is designed to enrich your IP database in the most efficient way possible. You should exclusively use these UDTFs if you are doing bulk IP data enrichment using our database.
Please refer to our Snowflake Listing Technical Guide to learn more:
IPinfo’s Listings on Snowflake Marketplace
Documentation and Database Schema: IP to Geolocation Database
IPinfo IP Geolocation — Snowflake Marketplace
Using the IP_LOCATION
UDTF for our IP geolocation database
Suppose the table containing the IP addresses is called LOG
, and the column containing the IP address is called IP
. By using the IP_LOCATION
UDTF included in your purchased IPinfo listing, we can enrich this IP log dataset with geolocation information such as zip code, geographic coordinates, city, country, and postal code.
SELECT *
FROM log l
JOIN TABLE(ipinfo.public.IP_LOCATION(l.ip))
Please note that ipinfo
on the ipinfo.public.IP_LOCATION
can be different for you. It depends on the name you gave to our listing when you purchased it.
The UDTF format is:
SELECT <column_containing_ip_addresses>
FROM <input_table> <table.alias>
JOIN TABLE(ipinfo.public.<UDTF_name>(<table_alias.column_name>))
The UDTF will return the full IP geolocation information for IPs which includes:
- City
- Region
- Country
- Postal
- Lat + Lng
- Timezone
For invalid IP addresses or IP addresses that aren’t included in our database, the outputted table will not include their information
If you want to learn about the technical aspect of how we came up with these UDTFs and the process behind their efficiency read this article: https://ipinfo.io/blog/ip-address-data-in-snowflake/