我的数据库包含“网站”列,其中包含以下数据:
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 Server,您只能查看oo
的URL的左N个字符。通过使用LEFT
和CHARINDEX
查找第一个.
],您将获得左N个字符
SELECT *
FROM @table
WHERE LEFT(val, CHARINDEX('.', val)) LIKE '%oo%'
假设您在site
中搜索的列,那么我相信您可以使用类似这样的内容:
因为oo
可以在字段中的任何位置: