我想在nvarchar
列中选择包含IP地址的行。什么是正确的where
声明?
SELECT * FROM tblUrl WHERE ... (Url contains an IP address)
答案 0 :(得分:4)
在数据库中编码IP地址的“通常方法”是:
这两种格式都允许您在一个时间间隔内快速匹配ip:
SELECT * FROM tblURL where URL > "192.168.010.000" and URL < "192.168.011.255"
或 SELECT * FROM tblURL其中URL&gt; 3232238080和URL&lt; 3232239080
如果您的表tblUrl
包含问题建议的网址,那么您应首先执行DNS查找以将名称解析为IP地址。
答案 1 :(得分:2)
你可以这么做
SELECT * FROM tblUrl WHERE URL like '192.168.1.%'
将选择从192.168.1.1到.254的所有IP地址
或者您可以更具创意,例如
SELECT * FROM tblUrl WHERE URL like '192.168.1.[0-9][0-9]'
这将选择所有IP地址192.168.1.10到.99