このトピックでは、IP関数の構文について説明します。 このトピックでは、関数の使用方法の例も示します。

次の表に、Log ServiceでサポートされているIP機能を示します。

重要 分析ステートメントで文字列を使用する場合は、文字列を単一引用符 ('') で囲む必要があります。 囲まれていない文字列または二重引用符 ("") で囲まれている文字列は、フィールド名または列名を示します。 たとえば、'status' はステータス文字列を示し、statusまたは "status" はステータスログフィールドを示します。
カテゴリ機能構文説明
IPv4アドレス関数ip_to_city関数ip_to_city(x)IPv4アドレスが属する都市を識別します。

この関数は、都市の中国語名を返します。

ip_to_city( x 、'en')IPv4アドレスが属する都市を識別します。

この関数は、都市の行政区画コードを返します。

ip_to_city_geo関数ip_to_city_geo(x)IPv4アドレスが属する都市の経度と緯度を識別します。 この関数は、都市の経度と緯度を返します。 各都市には1セットの座標しかありません。
ip_to_country関数ip_to_country(x)IPv4アドレスが属する国または地域を識別します。

この関数は、国または地域の中国語名を返します。

ip_to_country( x 、'en')IPv4アドレスが属する国または地域を識別します。

この関数は、国または地域のコードを返します。

ip_to_country_code関数ip_to_country_code(x)IPv4アドレスが属する国または地域を識別します。

この関数は、国または地域のコードを返します。

ip_to_domain関数ip_to_domain(x)IPv4アドレスがプライベートアドレスかパブリックアドレスかを確認します。
ip_to_geo関数ip_to_geo(x)IPv4アドレスの場所の経度と緯度を識別します。
ip_to_provider関数ip_to_provider(x)IPv4アドレスのインターネットサービスプロバイダー (ISP) を識別します。
ip_to_province関数ip_to_province(x)IPv4アドレスが属する 状態を識別します。

この関数は、 [状態] の中国語名を返します。

ip_to_province( x 、'en')IPv4アドレスが属する 状態を識別します。

この関数は、 [状態] の管理部門コードを返します。

IPv4 CIDRブロック関数ip_prefix関数ip_prefix( xprefix_bits)IPv4アドレスのプレフィックスを返します。
is_prefix_subnet_of関数is_prefix_subnet_of( xy)IPv4 CIDRブロックが指定されたCIDRブロックのサブネットであるかどうかを確認します。
is_subnet_of関数is_subnet_of( xy)IPv4アドレスが指定されたCIDRブロックにあるかどうかをチェックします。
ip_subnet_max関数ip_subnet_max(x)IPv4 CIDRブロックの最大のIPアドレスを返します。
ip_subnet_min関数ip_subnet_min(x)IPv4ブロック内の最小のIPアドレスを返します。
ip_subnet_range関数ip_subnet_range(x)IPv4 CIDRブロックの範囲を返します。
IPv6アドレス関数ipv6_to_city関数ipv6_to_city(x)IPv6アドレスが属する都市を識別します。
ipv6 _to_city_code関数ipv6_to_city_code(x)IPv6アドレスが属する都市の行政区画コードを識別します。
ipv6_to_city_geo関数ipv6_to_city_geo(x)IPv6アドレスが属する都市の経度と緯度を識別します。
ipv6_to_country関数ipv6_to_country(x)IPv6アドレスが属する国または地域を識別します。
ipv6_to_country_code関数ipv6_to_country_code(x)IPv6アドレスが属する国または地域のコードを識別します。
ipv6_to_domain関数ipv6_to_domain(x)IPv6アドレスがプライベートアドレスかパブリックアドレスかを確認します。
ipv6_to_provider関数ipv6_to_provider(x)IPv6アドレスのISPを識別します。
ipv6_to_province関数ipv6_to_province(x)IPv6アドレスが属する州を識別します。
ipv6_to_province_code関数ipv6_to_province_code(x)IPv6アドレスが属する省の行政区画コードを識別します。

ip_to_city関数

ip_to_city関数は、IPv4アドレスが属する都市を識別する。

構文

  • 次の構文を使用すると、この関数は都市の中国語名を返します。
    ip_to_city(x)
  • 次の構文を使用すると、この関数は都市の行政区分コードを返します。
    ip_to_city( x 、'en')

パラメーター

項目説明
xこのパラメーターの値はIPv4アドレスです。

レスポンス

varcharタイプ。

市ごとにリクエストの平均処理時間とリクエストの最大処理時間を計算し、最大処理時間を必要とするリクエストのIDを取得します。

  • クエリ文
    * |
    選択
      AVG(request_time) AS avg_request_time,
      MAX(request_time) AS max_request_time,
      MAX_BY(requestId, request_time) AS requestId,
      ip_to_city(client_ip) AS city
    グループ化
      city
  • クエリおよび分析の結果ip_to_city

ip_to_city_geo関数

The ip_to_city_geo機能識別経度と緯度の市に、IPv4アドレス属し。 返される結果は、都市の経度と緯度です。 各都市には1セットの座標しかありません。

構文

ip_to_city_geo(x)

パラメーター

項目説明
xこのパラメーターの値はIPv4アドレスです。

レスポンス

varcharタイプ。 形式: 緯度、経度

IPv4アドレスの経度と緯度、およびクライアントの分布を取得します。

  • クエリ文
    * |
    選択
      カウント (*) PVとして、
      ip_to_city_geo(client_ip) AS geo
    グループ化
      geo
    注文によって
      PV DESC
  • クエリおよび分析の結果ip_to_city_geo

ip_to_country関数

ip_to_country関数は、IPv4アドレスが属する国または地域を識別します。

構文

  • 次の構文を使用すると、この関数は国または地域の中国語名を返します。
    ip_to_country(x)
  • 次の構文を使用すると、この関数は国または地域のコードを返します。
    ip_to_country( x 、'en')

パラメーター

項目説明
xこのパラメーターの値はIPv4アドレスです。

レスポンス

varcharタイプ。

国または地域ごとにリクエストの平均処理時間とリクエストの最大処理時間を計算し、最大処理時間を必要とするリクエストのIDを取得します。

  • クエリ文
    * |
    選択
      AVG(request_time) AS avg_request_time,
      MAX(request_time) AS max_request_time,
      MAX_BY(requestId, request_time) AS requestId,
      国としてip_to_country(client_ip)
    グループ化
      country
  • クエリおよび分析の結果Latency

ip_to_country_code関数

ip_to_country_code関数は、IPv4アドレスが属する国または地域を識別します。 返される結果は、国または地域のコードです。

構文

ip_to_country_code(x)

パラメーター

項目説明
xこのパラメーターの値はIPv4アドレスです。

レスポンス

varcharタイプ。

国または地域ごとにリクエストの平均処理時間とリクエストの最大処理時間を計算し、最大処理時間を必要とするリクエストのIDを取得します。

  • クエリ文
    * |
    選択
      AVG(request_time) AS avg_request_time,
      MAX(request_time) AS max_request_time,
      MAX_BY(requestId, request_time) AS requestId,
      国としてip_to_country_code(client_ip)
    グループ化
      country
  • クエリおよび分析の結果ip_to_country_code

ip_to_domain関数

ip_to_domain関数は、IPv4アドレスがプライベートアドレスかパブリックアドレスかをチェックします。

構文

ip_to_domain(x)

パラメーター

項目説明
xこのパラメーターの値はIPv4アドレスです。

レスポンス

varcharタイプ。 この関数は、イントラネットまたはインターネットのみを返すことができます。
  • イントラネット: プライベートアドレス。
  • インターネット: パブリックアドレス。

内部ネットワークから送信されていないリクエストの総数を計算します。

  • クエリ文
    * |
    選択
      カウント (*) としてPV
    ここで
      ip_to_domain(client_ip) ! ='イントラネット'
  • クエリおよび分析の結果内部ネットワークから送信されないリクエスト

ip_to_geo関数

ip_to_geo関数は、IPv4アドレスの場所の経度と緯度を識別します。 geohash関数の詳細については、「Geo機能」をご参照ください。

構文

ip_to_geo(x)

パラメーター

項目説明
xこのパラメーターの値はIPv4アドレスです。

レスポンス

varcharタイプ。 形式: 緯度、経度

IPv4アドレスの経度と緯度、およびクライアントの分布を取得します。

  • クエリ文
    * |
    選択
      カウント (*) PVとして、
      ip_to_geo(client_ip) AS geo
    グループ化
      geo
    注文によって
      PV DESC
  • クエリおよび分析の結果クライアントの配布

ip_to_provider関数

ip_to_provider関数は、IPv4アドレスのISPを識別します。

構文

ip_to_provider(x)

パラメーター

項目説明
xこのパラメーターの値はIPv4アドレスです。

レスポンス

varcharタイプ。

ISPによるリクエストの平均処理時間を計算します。

  • クエリ文
    * |
    選択
      avg(request_time) AS avg_request_time,
      ip_to_provider(client_ip) ASプロバイダー
    グループ化
      プロバイダー
    注文によって
      avg_request_time
  • クエリおよび分析の結果ISPレイテンシ

ip_to_province関数

ip_to_provinceは、IPアドレスが属する 状態を識別します。

構文

  • 次の構文を使用すると、関数は状態の中国語名を返します。
    ip_to_province(x)
  • 次の構文を使用すると、関数は状態の管理部門コードを返します。
    ip_to_province( x 、'en')

パラメーター

項目説明
xこのパラメーターの値はIPv4アドレスです。

レスポンス

varcharタイプ。

リクエストの総数に基づいて、上位10個の 状態を取得します。

  • クエリ文
    * |
    選択
      カウント (*) をPVとして、
      ip_to_province(client_ip) AS province
    グループ化
      県
    注文によって
      PV desc
    リミット
      10
    上位10個の状態を取得したときに内部ネットワークから送信されたリクエストを除外する場合は、次のクエリ文を使用します。
    * |
    選択
      カウント (*) PVとして、
      ip_to_province(client_ip) AS province
    どこ
      ip_to_domain(client_ip) ! ='イントラネット'
    グループ化
      県
    注文によって
      PV DESC
    リミット
      10
  • クエリおよび分析の結果トップ10の州

ip_prefix関数

ip_prefix関数は、IPv4アドレスのプレフィックスを返します。 返される結果は、サブネットマスク形式のIPv4アドレスです。 例: 192.168.1.0/24。

構文

ip_prefix( xprefix_bits)

パラメーター

項目説明
xこのパラメーターの値はIPv4アドレスです。
prefix_bitsプレフィックスの長さ。

レスポンス

varcharタイプ。

client_ipフィールドの値でIPv4アドレスのプレフィックスを取得します。

  • クエリ文
    * | SELECT ip_prefix(client_ip,24) AS client_ip
  • クエリおよび分析の結果ip_prefix

is_prefix_subnet_of関数

is_prefix_subnet_of関数は、IPv4 CIDRブロックが指定されたCIDRブロックのサブネットであるかどうかを確認します。

構文

is_prefix_subnet_of( xy)

パラメーター

項目説明
xこのパラメーターの値は、IPv4 CIDRブロックです。 この関数は、y CIDRブロックがx CIDRブロックのサブネットであるかどうかをチェックします。
yこのパラメーターの値は、IPv4 CIDRブロックです。

レスポンス

ブール型。

client_ipフィールドの値のIPv4 CIDRブロックが192.168.0.1/24のサブネットであるかどうかを確認します。

  • クエリ文
    * | SELECT is_prefix_subnet_of('192.168.0.1/24 ',concat(client_ip,'/24 '))
  • クエリおよび分析の結果is_subnet_of

is_subnet_of関数

is_subnet_of関数は、IPv4アドレスが指定されたCIDRブロックにあるかどうかをチェックします。

構文

is_subnet_of( xy)

パラメーター

項目説明
xTheこのパラメータの値は、IPv4 CIDRブロック。
yこのパラメーターの値はIPv4アドレスです。

レスポンス

ブール型。

client_ipフィールドの値のIPv4アドレスが192.168.0.1/24にあるかどうかを確認します。

  • クエリ文
    * | SELECT is_subnet_of('192.168.0.1/24 '、client_ip)
  • クエリおよび分析の結果is_subnet_of

ip_subnet_min関数

ip_subnet_min関数は、IPv4 CIDRブロック内の最小のIPアドレスを返します。

構文

ip_subnet_min(x)

パラメーター

項目説明
xこのパラメーターの値は、IPv4 CIDRブロックです。

レスポンス

varcharタイプ。

client_IPフィールドの値のIPアドレスが属するIPv4 CIDRブロック内の最小のipアドレスを取得します。

  • クエリ文
    * | SELECT ip_subnet_min(concat(client_ip,'/24'))
  • クエリおよび分析の結果ip_subnet_min

ip_subnet_max関数

ip_subnet_max関数は、IPv4 CIDRブロック内の最大のIPアドレスを返します。

構文

ip_subnet_max(x)

パラメーター

項目説明
xこのパラメーターの値は、IPv4 CIDRブロックです。

レスポンス

varcharタイプ。

client_IPフィールドの値のIPアドレスが属するIPv4 CIDRブロックの最大のipアドレスを取得します。

  • クエリ文
    * | SELECT ip_subnet_max(concat(client_ip,'/24'))
  • クエリおよび分析の結果ip_subnet_max

ip_subnet_range関数

ip_subnet_range関数は、IPv4 CIDRブロックの範囲を返します。

構文

ip_subnet_range(x)

パラメーター

項目説明
xTheこのパラメータの値は、IPv4 CIDRブロック。

レスポンス

JSON型。

client_IPフィールドの値のipアドレスが属するIPv4 CIDRブロックの範囲を取得します。

  • クエリ文
    * | SELECT ip_subnet_range(concat(client_ip,'/24'))
  • クエリおよび分析の結果ip_subnet_range

ipv6_to_city関数

ipv6_to_city関数は、IPv6アドレスが属する都市を識別する。

構文

ipv6_to_city(x)

パラメーター

項目説明
xこのパラメーターの値はIPv6アドレスです。

レスポンス

varcharタイプ。

異なる都市から送信されたリクエストの数を取得します。

  • クエリ文
    * |
    選択
      ipv6_to_city(ipv6Address) AS city,
      カウント (*) ASカウント
    グループ化
      city
  • クエリおよび分析の結果ipv6_to_city

ipv6 _to_city_code関数

ipv6 _to_city_code関数は、IPv6アドレスが属する都市の行政区画コードを識別する。

構文

ipv6_to_city_code(x)

パラメーター

項目説明
xこのパラメーターの値はIPv6アドレスです。

レスポンス

varcharタイプ。

IPv6アドレスが属する都市の行政区画コードを取得します。

  • クエリ文
    * |
    選択
      ipv6Address、
      ipv6_to_city_code(ipv6Address) AS cityCode
    どこ
      cityCode <> ''
  • クエリおよび分析の結果ipv6_to_city_code

ipv6_to_city_geo関数

ipv6_to_city_geo関数は、IPv6アドレスが属する都市の経度と緯度を識別します。

構文

ipv6_to_city_geo(x)

パラメーター

項目説明
xこのパラメーターの値はIPv6アドレスです。

レスポンス

varcharタイプ。 形式: 緯度、経度

IPv6アドレスの経度と緯度、およびクライアントの分布を取得します。

  • クエリ文
    * |
    選択
      ipv6_to_city_geo(ipv6Address) AS geo,
      カウント (*) としてPV
    グループ化
      geo
    注文によって
      PV DESC
  • クエリおよび分析の結果ipv6_to_city_geo

ipv6_to_country関数

ipv6_to_country関数は、IPv6アドレスが属する国または地域を識別します。

構文

ipv6_to_country(x)

パラメーター

項目説明
xこのパラメーターの値はIPv6アドレスです。

レスポンス

varcharタイプ。

リクエストの総数に基づいて、上位10の国または地域を取得します。

  • クエリ文
    * |
    選択
      カウント (*) PVとして、
      国としてipv6_to_country(ipv6Address)
    どこ
      国 <> ''
    グループ化
      国
    注文によって
      PV DESC
    リミット
      10
  • クエリおよび分析の結果ipv6_to_country

ipv6_to_country_code関数

ipv6_to_country_code関数は、IPv6アドレスが属する国または地域のコードを識別します。

構文

ipv6_to_country_code(x)

パラメーター

項目説明
xこのパラメーターの値はIPv6アドレスです。

レスポンス

varcharタイプ。

IPv6アドレスが属する国または地域のコードを取得します。

  • クエリ文
    * |
    選択
      ipv6Address,
      コードとしてipv6_to_country_code(ipv6Address)
    どこ
      cityCode <> ''
  • クエリおよび分析の結果ipv6_to_country_code

ipv6_to_domain関数

ipv6_to_domain関数は、IPv6アドレスがプライベートアドレスかパブリックアドレスかをチェックします。

構文

ipv6_to_domain(x)

パラメーター

項目説明
xこのパラメーターの値はIPv6アドレスです。

レスポンス

varcharタイプ。 この関数は、イントラネットまたはインターネットのみを返すことができます。
  • イントラネット: プライベートアドレス。
  • インターネット: パブリックアドレス。

内部ネットワークとインターネットを介して送信されるリクエストの総数を取得します。

  • クエリ文
    * |
    選択
      ipv6_to_domain(ipv6Address) ASドメイン、
      カウント (*) ASカウント
    グループ化
      domain
  • クエリおよび分析の結果ipv6_to_domain

ipv6_to_provider関数

ipv6_to_provider関数は、IPv6アドレスのISPを識別します。

構文

ipv6_to_provider(x)

パラメーター

項目説明
xこのパラメーターの値はIPv6アドレスです。

レスポンス

varcharタイプ。

リクエストの総数に基づいて上位10個のISPを取得します。

  • クエリ文
    * |
    選択
      プロバイダーとしてipv6_to_provider(ipv6Address) 、
      カウント (*) ASカウント
    グループ化
      プロバイダー
    注文によって
      カウントDESC
    リミット
      10
  • クエリおよび分析の結果ipv6_to_provider

ipv6_to_province関数

ipv6_to_province関数は、IPv6アドレスが属するprovinceを識別します。

構文

ipv6_to_province(x)

パラメーター

項目説明
xこのパラメーターの値はIPv6アドレスです。

レスポンス

varcharタイプ。

リクエストの総数に基づいて上位10州を取得します。

  • クエリ文
    * |
    選択
      カウント (*) PVとして、
      ipv6_to_province(ipv6Address) AS province
    どこ
      省 <> ''
    グループ化
      県
    注文によって
      PV DESC
    リミット
      10
  • クエリおよび分析の結果ipv6_to_province

ipv6_to_province_code関数

ipv6_to_province_code関数は、IPv6アドレスが属する地域の行政区画コードを識別する。

構文

ipv6_to_province_code(x)

パラメーター

項目説明
xこのパラメーターの値はIPv6アドレスです。

レスポンス

varcharタイプ。

IPv6アドレスが属する州の行政区画コードを取得します。

  • クエリ文
    * |
    選択
      ipv6Address、
      コードとしてipv6_to_province_code(ipv6Address)
    どこ
      cityCode <> ''
  • クエリおよび分析の結果ipv6_to_province_code