2015-02-08 84 views
0

我不想制作一个基于IP返回国家的函数。 我已经将IP转换为十进制值,所以mysql可以使“之间”。 以下是我的票价。查找值到数值之间的值

def get(): 
    con = pymysql.connect(host='localhost', port=3306, user='root', 
    passwd='******', db='IP') 
    ip_d = "16777221" 
    with con: 

     cur = con.cursor() 
     return cur.execute("SELECT Land FROM IPaddresses where ip_d 
     BETWEEN Start and End") 
get() 

开始和结束是一个国家的第一个ip和结束ip,也表示为一个deciamal值。

回答

0

MySQL之间的解释: http://www.tutorialspoint.com/mysql/mysql-between-clause.htm

你应该改变StartEnd一些数字参数:

startValue=111222333 
endValue=888999000 

return cur.execute("SELECT Land FROM IPaddresses where ip_d 
    BETWEEN {start} and {end}".format(start=startValue,end=EndValue)) 
+0

我需要扫描througe数据库中,所以它findes所在国ip_d是开始之间结束 – 2015-02-08 19:33:04