筛选出sql 查询结果中 不包含某个字符

嗯... 你这个 SQL 语句... 我瞅了瞅... selectcardno, name from cardtable where cardno not in (select cardno from cardtable where name='C')... 这个意思啊... 就是去找 cardtable 表里... 那些卡号... 不在... 另外一个查询结果里的卡号... 而那个另外的查询... 就是找 name 字段... 包含 'C' 这个字母的... 卡号...
你嵌套了一个子查询... 就是那个 select cardno from cardtable where name='C'... 这个子查询... 它先找出所有 name 里包含 'C' 的卡号... 然后你外面那个查询... 就用 not in... 把这些卡号都排除掉... 剩下那些... name 不包含 'C' 的... 卡号... 和它们对应的 name... 对吧?
我试试运行一下... 假设我在 2 02 2 年... 在某个城市... 比如上海... 我有一个数据库... 我执行这个语句... 假设 cardtable 表里有 1 000 条记录... 可能会返回 8 00 条记录... 比如说... 可能花费了 0.5 秒... 这个时间... 因为你数据库里数据多不多... 服务器性能怎么样... 都有关系...
你说的扩展资料... 嗯... 子查询确实花样挺多的... 有 in 子查询... 就是像你这种... 有 not in 子查询... 还有带比较运算符的... 比如大于、小于... 有 any/all 子查询... 比如存在任意一个... 或者所有都满足... 还有 exists 子查询... 这个很特别... 是检查子查询有没有返回结果... 而不是看结果内容... 这些嵌套起来... 确实功能强大... 可以做筛选... 过滤... 排序... 去重... 什么都能干...
W3 C 官网... 那里肯定有详细介绍... 就是选语句... 各种子查询... 用法... 嗯... 你这个例子... 就是 in 和 not in 子查询... 基础用法... 挺清晰的... 可能我表达得有点啰嗦... 你看懂了吗?

mysql中如何用sql表示不包含字符的sql?

嘿,兄弟,记得那年我在公司数据库里找客户信息的时候,遇到了个麻烦事儿。
得从那会儿说起,我那时候用MySQL,得查出一堆客户信息,但得排除掉那些名字里含有“abc”的客户。
这事儿不简单,一开始我还以为得写个复杂的查询语句,结果发现,MySQL里有个NOT LIKE功能,这玩意儿就是用来干这个的。

那时候我写了这么个查询:SELECT FROM customers WHERE name NOT LIKE '%abc%'; 这里的'%'是通配符,代表任意数量的任意字符,所以这个查询就相当于告诉MySQL,找出名字里不包含“abc”的客户。

还有一次,我帮一个朋友查数据,他要排除掉所有包含数字的记录。
这回我用了NOT REGEXP,这玩意儿比LIKE灵活多了。
我写的查询是:SELECT FROM orders WHERE order_id NOT REGEXP '[0-9 ]'; 这里的'[0-9 ]'就是一个正则表达式,表示匹配任意数字,加上NOT REGEXP,意思就是找出不包含数字的订单。

再有一次,有个同事让我帮忙找一批员工信息,但名单里不能有“John”和“Mike”。
我这次用了个NOT IN,这个简单,直接写:SELECT FROM employees WHERE name NOT IN ('John', 'Mike');
这三招在我那会儿解决了不少类似的难题,现在想起这些,感觉还挺有趣的。
说起来,数据库查询这事儿,真的是得掌握一些技巧,才能更快地找到你想要的信息。
哈哈,这就是我这些年的经验分享,希望能帮到你!

SQL语句查询 不包括XX字符 求助

三种方法简单说: 1 . notlike,直接看。
2 . replace,比长度。
3 . charIndex,找位置。
4 . pathIndex,判断0。

用哪种看需求,你自己看。

sql语句中查询某字段不含某字符的写法

对,就是这个问题。
先创建个表,再插几条数据。

创建表: sql CREATE TABLE test_users ( name VARCHAR2 (2 0), zw VARCHAR2 (2 0), zc VARCHAR2 (2 0) );
插入数据: sql INSERT INTO test_users VALUES ('王XX', '校长', ''); INSERT INTO test_users VALUES ('陈XX', '', '院长'); INSERT INTO test_users VALUES ('张XX', '', '教授'); INSERT INTO test_users VALUES ('李XX', '主任', ''); INSERT INTO test_users VALUES ('吴XX', '', '处长'); INSERT INTO test_users VALUES ('段XX', '', '副教授');
查询全量数据: sql SELECT t., ROWID FROM test_users t;
查不含特定职称的记录: sql SELECT t. FROM test_users t WHERE NOT REGEXP_LIKE(zw || zc, '院长|校长|主任|处长');
你自己看,这些语句都对吗?