Sql server 2012 如何逃离“&”;使用连接到SQL Server 2012的SQL Developer时的符号

Sql server 2012 如何逃离“&”;使用连接到SQL Server 2012的SQL Developer时的符号,sql-server-2012,oracle-sqldeveloper,Sql Server 2012,Oracle Sqldeveloper,这是senerio,我使用Oralce SQL Developer(4.1.3)连接到SQL Server数据库(2012)。这是我计划执行的SQL语句 select FORMAT(createDate,'yyyyMMdd') AS date, SUM(bb_cnt) AS 'Broadband Service', SUM(tel_cnt) AS 'Telephone Servi

这是senerio,我使用Oralce SQL Developer(4.1.3)连接到SQL Server数据库(2012)。这是我计划执行的SQL语句

    select   FORMAT(createDate,'yyyyMMdd') AS date,
         SUM(bb_cnt)                   AS 'Broadband Service',
         SUM(tel_cnt)                  AS 'Telephone Service',
         SUM(bb_tel_cnt)               AS 'Broadband & Telephone Service',
from    (select createDate,
                CASE WHEN ServicePlan LIKE '%Broadband Service%'              then 1 else 0 end AS bb_cnt,
                CASE WHEN ServicePlan LIKE 'Telephone Service%' OR ServicePlan LIKE '%, Telephone Service%' then 1 else 0 end AS tel_cnt,
                CASE WHEN ServicePlan LIKE '%Broadband & Telephone Service%' then 1 else 0 end AS bb_tel_cnt,
         from   EFormRegisterationData
        ) a
group by FORMAT(createDate,'yyyyMMdd') order by 1;
问题是,我似乎无法让SQL开发人员将&识别为文字符号。我尝试了很多方法来逃避它,但它总是认为它是一个变量,我用谷歌搜索这个问题并找到这个有用的链接, ,在本文中,SQL开发人员团队提到了演练,“在SQL Server查询之前。 设置DEFINE OFF;”,我试过了,但SQL开发人员告诉我它有语法错误,我不知道,任何建议都将不胜感激,谢谢


另外:当使用连接到sql Server 2012的DataGrip时,完全相同的sql也可以正常工作,这太糟糕了,所以我认为问题在于客户端软件,而不是sql语句本身。

尝试将其分解。我正在使用手机,因此无法测试其他解决方案

ServicePlan LIKE 'Broadband%' AND ServicePlan LIKE '%Telephone Service' THEN ...

试着把它拆开。我正在使用手机,因此无法测试其他解决方案

ServicePlan LIKE 'Broadband%' AND ServicePlan LIKE '%Telephone Service' THEN ...

,sql语句中有两个“&”(作为“宽带和电话服务”,如“%宽带和电话服务%”),它们都需要转义,我想要的是转义字符&不要忽略,无论如何,再次感谢。@sheldonshen该语句在代码中的位置是什么?请参阅我的更新答案,以了解此代码在SQL Server上运行良好而不转义的示例。它确实运行良好,我还发现,当使用连接到SQL Server 2012的DataGrip时,完全相同的SQL运行良好,这是非常糟糕的,因此我认为问题在于客户端软件(SQL Developer),而不是SQL语句本身。有两个“&”在sql语句(如“宽带和电话服务”,如“%宽带和电话服务%”)中,它们都需要转义,我希望转义的是&字符,无论如何,不要忽略,再次感谢。@sheldonshen该语句在代码中的位置是什么?请参阅我的更新答案,以了解此代码在SQL Server上运行良好而不转义的示例。它确实运行良好,我还发现,当使用连接到SQL Server 2012的DataGrip时,完全相同的SQL也可以正常工作,这太糟糕了,因此我认为问题在于客户端软件(SQL Developer),不是sql语句本身。我在以下链接中找到了答案:@Anjani Kumar Agrawal。我尝试了此线程中提供的解决方案,它在其他上下文中运行良好,但它们在我的上下文中都无效,使用连接到sql Server 2012的sql Developer,环境是不同的。我在这个链接上找到了答案:@Anjani Kumar Agrawal。我尝试了这个线程中提供的解决方案,它在其他上下文中运行良好,但在我的上下文中它们都无效,使用连接到SQL Server 2012的SQL Developer,环境是不同的。