tencent cloud

日志服务

动态与公告
产品动态
公告
新手指引
产品简介
产品概述
产品优势
地域和访问域名
规格与限制
基本概念
购买指南
计费概述
产品定价
按量计费(后付费)
欠费说明
清理日志服务资源
成本优化
常见问题
快速入门
一分钟入门指南
入门指南
使用 Demo 日志快速体验 CLS
操作指南
资源管理
权限管理
日志采集
指标采集
日志存储
指标存储
检索分析(日志主题)
检索分析(指标主题)
仪表盘
数据处理
投递与消费
监控告警
云产品中心
DataSight 独立控制台
历史文档
实践教程
日志采集
检索分析
仪表盘
监控告警
投递和消费
成本优化
开发者指南
通过 iframe 内嵌 CLS(旧方案)
通过 Grafana 使用 CLS
API 文档
History
Introduction
API Category
Making API Requests
Topic Management APIs
Log Set Management APIs
Index APIs
Topic Partition APIs
Machine Group APIs
Collection Configuration APIs
Log APIs
Metric APIs
Alarm Policy APIs
Data Processing APIs
Kafka Protocol Consumption APIs
CKafka Shipping Task APIs
Kafka Data Subscription APIs
COS Shipping Task APIs
SCF Delivery Task APIs
Scheduled SQL Analysis APIs
COS Data Import Task APIs
Data Types
Error Codes
常见问题
健康监测问题解释
采集相关
检索分析相关
其他问题
服务等级协议
CLS 政策
隐私协议
数据处理和安全协议
联系我们
词汇表

IP 函数

PDF
聚焦模式
字号
最后更新时间: 2026-01-07 15:39:43
IP 函数可用于判断 IP 地址属于内网还是外网,也可用于分析 IP 地址所属的国家、省份、城市。本文介绍 IP 地理函数的基本语法及示例。

IP 地址函数

说明:
如下函数中的 KEY 参数表示日志字段(例如 ip),其值为 IP 地址;若其值为内部 IP 地址或非法字段将无法被解析,以 “NULL”或“未知”展示。
IP 目前仅支持 IPv4 地址,IPv6 暂不支持。
基于 IP 地址分配机制的限制,IP 地址库无法100%准确涵盖所有 IP 地址的地理信息,极少部分 IP 地址可能会查询不到详细地理信息或地理信息存在错误。
函数名称
说明
示例
ip_to_domain(KEY)
判断目标 IP 地址是内网地址还是外网地址。内网则返回 intranet,外网则返回 internet,非法 IP 地址则返回 invalid。
* | SELECT ip_to_domain(ip)
ip_to_country(KEY)
分析目标 IP 地址所属国家或地区。返回结果为国家或地区的中文名称。
* | SELECT ip_to_country(ip)
ip_to_country_code(KEY)
分析目标 IP 地址所属国家或地区的代码。返回结果为国家或地区的代码。
* | SELECT ip_to_country_code(ip)
ip_to_country_geo(KEY)
分析目标 IP 地址所属国家或地区的经纬度。返回结果为国家或地区的经纬度。
* | SELECT ip_to_country_geo(ip)
ip_to_province(KEY)
分析目标 IP 地址所属省份。返回结果为省份的中文名称。
* | SELECT ip_to_province(ip)
ip_to_province_code(KEY)
分析目标 IP 地址所属省份的代码。返回结果为省份的行政区划代码。
* | SELECT ip_to_province_code(ip)
ip_to_province_geo(KEY)
分析目标 IP 地址所属省份的经纬度。返回结果为省份的经纬度。
* | SELECT ip_to_province_geo(ip)
ip_to_city
分析目标 IP 地址所属城市。返回结果为城市的中文名称,国外城市为英文名。
* | SELECT ip_to_city(ip)
ip_to_city_code
分析目标 IP 地址所属城市的代码。返回结果为城市的行政区规划代码,暂不支持中国台湾及国外城市。
* | SELECT ip_to_city_code(ip)
ip_to_city_geo
分析目标 IP 地址所属城市的经纬度。返回结果为城市的经纬度,暂不支持中国台湾及国外城市。
* | SELECT ip_to_city_geo(ip)
ip_to_provider(KEY)
分析目标 IP 地址对应的网络运营商,返回结果为网络运营商名称。
* | SELECT ip_to_provider(ip)

IP 网段函数

说明:
如下函数中的 KEY 参数表示日志字段(例如 ip),其值为 IP 地址。
其中 ip_subnet_min、ip_subnet_max、ip_subnet_range 函数中的字段值为子网掩码格式的 IP 地址(例如:192.168.1.0/24),如果字段值为通用的 IP 地址,则需要使用 cancat 函数将其转换为子网掩码格式。
函数名
说明
示例
ip_prefix(KEY,prefix_bits)
获取目标 IP 地址的前缀。返回结果为子网掩码格式 IP 地址。例如192.168.1.0/24。
* | SELECT ip_prefix(ip,24)
ip_subnet_min(KEY)
获取 IP 网段中的最小 IP 地址。返回结果为 IP 地址,例如192.168.1.0。
* | SELECT ip_subnet_min(concat(ip,'/24'))
ip_subnet_max(KEY)
获取 IP 网段中的最大 IP 地址。返回结果为 IP 地址,例如192.168.1.255。
* | SELECT ip_subnet_max(concat(ip,'/24'))
ip_subnet_range(KEY)
获取 IP 网段范围。返回结果为 Array 类型的 IP 地址,例如[[192.168.1.0, 192.168.1.255]]。
* | SELECT ip_subnet_range(concat(ip,'/24'))
is_subnet_of
判断目标 IP 地址是否在某网段内。返回结果为布尔值。
* | SELECT is_subnet_of('192.168.0.1/24', ip)
is_prefix_subnet_of
判断目标网段是否为某网段的子网。返回结果为布尔值。
* | SELECT is_prefix_subnet_of('192.168.0.1/24',concat(ip, '/24'))

示例

此处列举了 IP 函数在不同场景下的查询和分析示例。您在执行查询和分析操作后,还可以选择合适的统计图表展示查询和分析结果。
说明:
如下示例中的 ip 为日志字段。
统计不是来自内网的请求总数。
* | SELECT count(*) AS PV where ip_to_domain(ip)!='intranet'
统计请求总数 Top10的省份。
* | SELECT ip_to_province(ip) AS province, count(*) as PV GROUP BY province ORDER BY PV desc LIMIT 10
如果上述结果中包含了内网请求,且您希望过滤这部分请求,可参考如下查询和分析语句。
* | SELECT ip_to_province(ip) AS province, count(*) as PV where ip_to_domain(ip)!='intranet' GROUP BY province ORDER BY PV desc LIMIT 10
统计 IP 地址的经纬度,确认客户端分布情况。
* | SELECT ip_to_geo(ip) AS geo, count(*) AS pv GROUP BY geo ORDER BY pv DESC


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈