sql - Openquery where 子句使用多个like
问题描述
我正在尝试使用多个Where
子句运行 Openquery,NOT LIKE
但给了我错误
“错误:MALFORMED_QUERY,行:15:列:16 意外标记处的错误:喜欢”。
我试图运行的是这样的
SELECT * from openquery(Server, 'Select Id
, BodyLength
, ContentType
, CreatedById
, CreatedDate
, Description
, IsPrivate
, LastModifiedById
, LastModifiedDate
, Name
, OwnerId
, ParentId
from Attachment
where LastModifiedDate > 2018-11-16T00:00:00Z
and (Name NOT like (''SML -%'') and
Name NOT like (''EARLY -%'') and
Name NOT like (''DELAYED -%'') and
Name NOT like (''CLOSED -%'') and
Name NOT like (''CLOSURE -%'') and
Name NOT like (''OUTAGE -%'') and
Name NOT like (''MISC -%'') and
Name NOT like (''TIME AS A CONTROL%'') and
Name NOT like (''TEMPORARY -%''))
order by Id
LIMIT 10000') x
我想要的是排除所有以 Name 开头的记录。当不按名称排除时,它运行顺利,但我真的需要它。有任何想法吗?
解决方案
可能问题是您的日期常数,而不是like
. 它需要分隔符:
where LastModifiedDate > ''2018-11-16T00:00:00Z'' and
(Name NOT like ''SML -%'' and
Name NOT like (''EARLY -%'') and
. . .
)
推荐阅读
- sql - TSQL:如何合并多个复杂的选择?
- c++ - 静态变量可以多次初始化吗?
- android - 如何为 kotlin 协程编写单元测试
- amazon-web-services - 如果需要白名单,我们是否应该将 AWS Lambda 保留在 VPC 中?
- reactjs - 在每次渲染时保持反应组件的状态
- java - spark与kafka的整合,Spark中的异常——提交一个jar
- regex - 正则表达式不应与所有可能的特定单词匹配
- python - py 调用返回的大小大于分辨率
- javascript - 从众多输入之一中获得最高价值
- android - 是否可以在返回 LiveData 的 Room @DAO 中编写“挂起”函数?