SQL Server选择看起来像'Like'

问题描述:

我对SQL Server的LIKE运算符有疑问。SQL Server选择看起来像'Like'

我有一个表Table1

app ex 
---------- 
test 210 

我写从方案选择一些选择是看起来是这样的:

select app 
from Table1 
where ex Like = '210203' 

我曾尝试使用(%,%.%,[])。

如果我尝试[]这一个这样的[210] 203它正在工作,但会有更多的数据,所以如果将有2102在前我希望这个选择这一个。

但它不是选择什么beacouse版本是210203和EX是210

如何管理这一点,我选择210的变量不能改变,因此会比“EX”总是变大数据

请帮助我的人。

+1

检查这里https://www.w3schools.com/sql/sql_wildcards.asp –

+1

这个查询有明显的语法错误。除此之外,这个问题没有多大意义。它应该做什么?不是怎么样,不是'有点',什么。查找具有特定前缀的行? 'ex'行中哪里有字符串?最后一个字符串? “210 ...”和“211 ...”之间的行数? –

你的查询不对,你不要在Like中使用“=”运算符。

SELECT app FROM Table1 WHERE ex LIKE '%210%' 

在这种情况下,将过滤谁有210内的值。

如果您使用例如:Like ='%210'将筛选以210 ..结尾的值等等。

更新

您可以使用过这一点,我认为这将有助于你

declare @Value varchar(50) 
set @value = '123AAAAA123' 

select * from Table where @Value like '%' + column + '%' 
+0

嗯但问题是,我不能削减来的数量它有点像包含或类似但viseversa – Wuhu

+1

但仍不明白你真的想要做什么? –

+2

@Whuhu你想做什么?没有'有点像包含,但viseversa'。如果你想使用通配符,你使用通配符。 –