SQL LIKE语句适用于所有不超过特定字符的语句

问题描述 投票:0回答:2

我的数据库包含“网站”列,其中包含以下数据:

foo1.web.com
foo2.gov
doo3.shoo.net
baa.com
baa2.shoo.com

我正在寻找一条选择语句,该语句可以捕获所有类似变量的内容,但仅在第一个句点之前,我想忽略句点之后的所有内容:

DELCARE @variable varchar(MAX);
SET @variable = 'oo';

SELECT * WHERE website LIKE @variable --(but only apply like statement up to the first .)

所以我会回来的是:

foo1.web.com
foo2.gov
doo3.shoo.net

但它会省略

baa2.shoo.com

感谢您的事先帮助!

sql database select sql-like
2个回答
2
投票

对于SQL Server,您只能查看oo的URL的左N个字符。通过使用LEFTCHARINDEX查找第一个.],您将获得左N个字符

SELECT * 
FROM @table
WHERE LEFT(val, CHARINDEX('.', val)) LIKE '%oo%'

0
投票

假设您在site中搜索的列,那么我相信您可以使用类似这样的内容:


-2
投票

因为oo可以在字段中的任何位置:

© www.soinside.com 2019 - 2024. All rights reserved.