Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何在Power BI中使用IP进行定位?_Sql Server_Powerbi_Powerbi Datasource - Fatal编程技术网

Sql server 如何在Power BI中使用IP进行定位?

Sql server 如何在Power BI中使用IP进行定位?,sql-server,powerbi,powerbi-datasource,Sql Server,Powerbi,Powerbi Datasource,当前正在尝试通过IP从SQL Server数据源添加用户地图。IP要么映射到错误的位置,要么根本不使用Power BI的内置查找进行映射 有没有办法通过IP列查询位置?或者任何已知的API为我做这件事 试试这个: 它返回: <Response> <IP>8.8.8.8</IP> <CountryCode>US</CountryCode> <CountryName>United States</CountryName&g

当前正在尝试通过IP从SQL Server数据源添加用户地图。IP要么映射到错误的位置,要么根本不使用Power BI的内置查找进行映射

有没有办法通过IP列查询位置?或者任何已知的API为我做这件事

试试这个:

它返回:

<Response>
<IP>8.8.8.8</IP>
<CountryCode>US</CountryCode>
<CountryName>United States</CountryName>
<RegionCode>CA</RegionCode>
<RegionName>California</RegionName>
<City>Mountain View</City>
<ZipCode>94035</ZipCode>
<TimeZone>America/Los_Angeles</TimeZone>
<Latitude>37.386</Latitude>
<Longitude>-122.0838</Longitude>
<MetroCode>807</MetroCode>
</Response>

我也遇到了类似的问题,下面是我所做的

  • 我从源数据表创建了一个新表,其中包含不同的IP地址
  • 创建了一个自定义函数,用于查询IP地址并获取详细信息(请参见底部)
  • 单击功能区中的添加列,然后单击调用自定义函数
  • 查询完成后,单击新列,并通过单击列右上角的图标扩展表
  • -- 为我工作的功能代码是

    = let
        Source = (#"IP Address" as text) => let
        Source = Json.Document(Web.Contents("http://freegeoip.net/json/" & #"IP Address")),
        #"Converted to Table" = Record.ToTable(Source),
        #"Transposed Table" = Table.Transpose(#"Converted to Table"),
        #"Promoted Headers" = Table.PromoteHeaders(#"Transposed Table")
    in
        #"Promoted Headers"
    in
        Source
    

    我如何将其整合到power bi中?打开数据源,使用连接到数据->Web并使用此url。您将得到一个具有此值的表。我已经检查了它,并返回了一个表,每个字段有一列。我很高兴能帮上忙。
    http://freegeoip.net/json/8.8.8.8
    
    {"ip":"8.8.8.8","country_code":"US","country_name":"United States","region_code":"CA","region_name":"California","city":"Mountain View","zip_code":"94035","time_zone":"America/Los_Angeles","latitude":37.386,"longitude":-122.0838,"metro_code":807}
    
    = let
        Source = (#"IP Address" as text) => let
        Source = Json.Document(Web.Contents("http://freegeoip.net/json/" & #"IP Address")),
        #"Converted to Table" = Record.ToTable(Source),
        #"Transposed Table" = Table.Transpose(#"Converted to Table"),
        #"Promoted Headers" = Table.PromoteHeaders(#"Transposed Table")
    in
        #"Promoted Headers"
    in
        Source