选择查询以返回列中包含域名的所有行
问题描述:
我有一列存储URL,我想生成一个选择查询来撤回包含特定域名的所有URL。网址选择查询以返回列中包含域名的所有行
实例存储: http://www.fox.com/files/apple.jpg,http://mail.redfox.com/help/index.aspx,http://apple.com/ 等
我知道你已经在想,只是使用等。
我不能的原因是:SELECT * WHERE Domains IS LIKE %fox.com%
它将返回http://www.fox.com/files/apple.jpg以及http://mail.redfox.com/help/index.aspx(因为它们都包含fox.com)。
我不是所有的人都懂你的基本查询SQL,SQL Server可以做一些我不熟悉的正则表达式魔法?
答
你可以两个子域测试域名和裸域:
WHERE Domains IS LIKE '%.fox.com/%' OR Domain IS LIKE '%/fox.com/%'
当然,你可以用正则表达式([\/\.]fox.com\/
)做到这一点,但简单的SQL可能会更容易记住/后来明白上。
那么为什么你不使用:SELECT * WHERE Domains IS LIKE%www.fox.com% – Vikram 2012-02-27 14:42:57
我想说你的第一步不是理解SQL或RegExp,它是编码你真正想要测试/搜索的东西。除非你要求我们给你一个算法吗? – MatBailie 2012-02-27 14:49:30