2015年2月5日 星期四

[T-SQL]如何判斷IP是否落在某段IP範圍內?

        最近要測試Excel的Power Map,一般系統不會記錄使用者的地理資訊,頂多記IP吧,稍微查了Get and prep your data for Power Map,裡面提到Power Map的地理資訊支援下列幾種
Latitude/Longitude pair, City, Country/Region, Zip code/Postal code, State/Province, or Address
        用經緯度分析資料除非資料量非常大,要不然量小看起來沒什意義,那收斂到City感覺比較合理,所以找了一下如何用IP轉City,當然網上一堆服務可以用,但我不想讓DB層對外,想看有沒有現成的對應表可用,結果DB-IP - IP Geolocation and Network Intelligence有現成的DB可下載,免費版的可就可對應到city耶,五百萬筆資料應該也夠測試了 ,於是就下載來試試

        下載回來的資料是csv,我一開始轉入DB時發現一些問題,資料會有亂碼,用Unicode轉進去會剖析不了,發現編碼好像怪怪的,所以調成下圖那樣就可以匯入了