首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ip2nation IP值更新mysql查询

使用ip2nation IP值更新mysql查询
EN

Stack Overflow用户
提问于 2013-10-24 12:41:07
回答 1查看 712关注 0票数 0

我在一个名为tbl1的数据库中有一个表,在这个表中,我将IP地址转换为长号,以便使用ip2nations数据库对它们进行比较。例如,我有

代码语言:javascript
复制
ip           | ip_number    |   country code
27.33.41.150 | 455158166    |

然后我下载了ip2nation数据库并将其添加到我的数据库中。他们将数字转换为国家的例子如下

代码语言:javascript
复制
SELECT country 
FROM ip2nation 
WHERE ip < 455158166
ORDER BY ip DESC 
LIMIT 0,1

ip2nation是他们可以在网站上下载的表格。它有两个列

代码语言:javascript
复制
ip         |  country

我希望能够对数据库中的所有值(100 K)运行一个更新查询,以便将我必须的ip_number转换为国家代码( ip2nation表中的country列)。我将如何做到这一点,因为我不知道如何用他们的示例查询中的<标识符来编写更新查询。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-24 12:56:11

如果数据库具有范围(例如ip_start、ip_end ),那么您只需选择ip位于这些ip_start和ip_end之间的国家就更好了,但对于您的示例来说,您可以这样更新表。

代码语言:javascript
复制
UPDATE your_table t
SET t.country_code =
   (SELECT i.country
      FROM ip2nation i
     WHERE i.ip < t.ip
     ORDER BY i.ip DESC LIMIT 0, 1)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19566238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档