MSSQL Server 中通配符(转义)

场景:系统A(我们自己的),系统中含有组织结构。当有多个第三方系统需要对接到我们系统中时需要对接组织数据,又因为各自的系统都

有自己的组织结构标识又是不统一的如:

 

 如图,实际代表的部门是一个但是名称或者key不一致的时候。此时我们在不进行字段扩展的时候做了拼接标签

形式的扩展。如:研发一部[Default],软件一部[系统B],软件研发一部[系统C]

实际看结构:

这里我们的数据 :研发一部[Default],软件一部[系统B],软件研发一部[系统C] 就存在CLIENT_ORG_ID 字段的。

这样如果第三方带有组织的标识过来我们就可以解析到对应我们自己的系统,从而进行流转。其实这里怎么涉及不重要。

我们这种方式也不一定是好的。我们今天关注的主要是:研发一部[Default],软件一部[系统B],软件研发一部[系统C]

这种拼接而且带有标签的字符串在sql中怎样查询呢?

其实我们目的就是

 

但是这里就会有一个问题,[  中括号,因为在sql中 [  是通配符,所以如果是上面这么写匹配的是啥?如下:

研发一部D
研发一部e
研发一部f
研发一部a
研发一部u
研发一部l
研发一部t

并不是  研发一部[Default]  这时我们就需要使用另一个办法:  ESCAPE  转义

posted @ 2020-01-21 11:42  山顶洞外人  阅读(1197)  评论(0编辑  收藏  举报