update gm_player_info
set countryCode =(select top 1 countryCode from GeoIP from A.ips between beginNum and endNum)
from gm_player_info A
表gm_player_info里有3000W条数据,ips加了索引的,ips是IP转换才数值型
表GeoIP 是IP库,里面有IP段的国家,beginNum 和endNum是IP转换才数值型
请问这个要修改表gm_player_info的国家,需要怎么做比较块?我用上面的SQL改已经50分钟了,还是没有反应,求指点
------解决思路----------------------
在新窗口,把你这个语句贴进去,然后点ctrl+L,贴一下那个执行计划。
PS,你的语句有错,两个from,最后一个要改成where
------解决思路----------------------
update gm_player_info
set countryCode = G.countryCode
from gm_player_info A, GeoIP G
WHERE A.ips between G.beginNum and G.endNum
------解决思路----------------------
CREATE INDEX IX_GeoIP ON GeoIP(beginNum,endNum)INCLUDE(countryCode)
加上试试