2010-01-28 78 views
1

当我在LIKE中使用.运算符时,运算符查询未选择任何记录。如何使用“。”在LIKE查询中?

我查询

SELECT * 
FROM XSP_AssetList_V 
WHERE AccountID = '5d6b1eab-1697-de11-a2d1-00505617006d' 
AND PrinterSerialNumber 
LIKE '%13.12%' 

如何LIKE使用.

+3

请张贴它在你看来,应选择记录的值。 – Quassnoi 2010-01-28 17:28:29

+0

我有一个IP地址的记录,其值是13.121.238.11 我如何选择记录的值是13.121.238.11 使用sql查询 – xrx215 2010-01-28 17:36:35

+0

IP地址查询在我的随机表中正常工作,就像你拥有它。你确定这不是你的帐户#抛弃预期的结果吗? – 2010-01-28 17:43:04

回答

4

在SQL中,单个字符的通配符是“_”而不是“。”

LIKE '%13_12%' 
  • %匹配的零个或多个字符的任意字符串。
  • _匹配任何单个字符。
  • []匹配指定范围内的任何单个字符(例如[a-f])或设置(例如[abcdef])。
  • [^]匹配不在指定范围内的任何单个字符(例如[^ a - f])或集合(例如[^ abcdef])。
+0

我认为OP不寻找单字符通配符。这是问为什么实际'。'字符不匹配它应该在的地方。两者的结合 – Aaron 2010-01-28 18:03:31

0

你在做什么应该工作,也许你的帐户ID是不正确或两者的组合不返回任何

create table #test(ip varchar(16)) 
insert #test values ('13.121.238.11') 
insert #test values ('13.124.254.128') 
insert #test values ('127.0.0.1') 

select * from #test where ip like '%13.12%' 
+0

工程 SELECT * FROM XSP_AssetList_V WHERE帐户ID = '5d6b1eab-1697-DE11-a2d1-00505617006d' AND PrinterSerialNumber LIKE '%13%' 将显示记录 但这并不显示recoreds SELECT * FROM XSP_AssetList_V WHERE的AccountID ='5d6b1eab-1697-de11-a2d1-00505617006d'AND PrinterSerialNumber LIKE'%13.12%' – xrx215 2010-01-28 18:03:35