Sql Ms access中一列条件不相等
我在一列中有5个单词,我需要删除其中的两个单词并显示剩余的结果 表名tempSql Ms access中一列条件不相等,sql,ms-access-2010,Sql,Ms Access 2010,我在一列中有5个单词,我需要删除其中的两个单词并显示剩余的结果 表名temp Id approval_trade 1 closed 2 closed by 3 open 4 target 5 running 6 now 我需要的结果如下所示,使用不等于条件 Id approval_trade 3 open 4 target
Id approval_trade
1 closed
2 closed by
3 open
4 target
5 running
6 now
我需要的结果如下所示,使用不等于条件
Id approval_trade
3 open
4 target
5 running
6 now
我的问题
select *
from temp
where approval_trade <> 'closed' and approval_trade <> 'closed by'
选择*
临时工
其中批准交易“关闭”和批准交易“关闭人”
您可能有看不见但会干扰比较的隐藏字符。首先,这种查询通常使用而不是编写:
select *
from temp
where approval_trade not in ('closed', 'closed by');
这是更短的,更不容易发生意外错误
在您的情况下,我会问这是否会返回您不想要的行:
select *
from temp
where approval_trade in ('closed', 'closed by');
如果是,那么您的查询(以及不在
中的)版本应该可以工作。我猜他们没有。下一步,我会喜欢。这是否只返回不需要的行
select *
from temp
where approval_trade like 'closed*';
如果这正好返回您想要的内容,则使用不喜欢来获得您想要的内容:
where approval_trade not like 'closed*'
如果这不起作用,那么问题就更难了。更多地了解数据的确切外观以及查询返回的内容会有所帮助。查询有什么问题?您只是没有得到所需的结果,还是发生了错误?根据我所看到的情况,我所能想到的就是审批交易栏中有“非显示”字符,如制表符、空格或回车,这可能是它们不匹配的原因。我的查询没有得到准确的结果……我可以使用或条件吗?