是'&'是什么特别的sql?

时间:2011-03-29 23:27:36

标签: sql sql-server

我在microsoft sql server management studio中有一个使用代码的视图

WHEN (CHARINDEX('&', page_url) > 0)

在案例陈述中,&什么特别的东西?

即使在包含不包含'&'的网址的字符串中它似乎大于0 ......?

3 个答案:

答案 0 :(得分:3)

角色'&'在字符串中使用时没有什么特别之处 - 它只是一个&符号。 我知道没有专门对待它的SQL引擎。(好吧,显然Oracle做了一些古怪的事情。但是SQL服务器肯定没有,我也没有使用任何其他DBMS。)

答案 1 :(得分:1)

不,它应该只返回索引。运行此示例以查看:

SELECT CHARINDEX('&', 'test&test')

这会像您期望的那样返回5。你能发布什么字符串,它没有返回预期的结果吗?

答案 2 :(得分:0)

它没有特别的意义。自己做一个测试:

SELECT CHARINDEX('&', 'http://blah.com/page.html?q=one&w=another') 

应该返回32

SELECT CHARINDEX('&', 'http://blah.com/page.html?q=one')

应该返回0

问题可能出在CASE声明的其他地方。