现在问题是这个 - >
列出名称中包含“A”和“B”的经销商名称
我试过了
select * from distributor where dname like '%b% a%' or dname like '%a% b%';
select * from distributor where dname like '%a%' and dname like '%b%';
当问题说a和b字符来自此表(分销商)的任何名称时,您应该显示该名称...
现在需要一些帮助来理解这个查询?有人请...
错误是--->>
*//SQL> select * from distributor where dname like '%b% a%' or dname like '%a% b%';
no rows selected
SQL> select * from distributor where dname like '%a' and '%b';
select * from distributor where dname like '%a' and '%b'
*
ERROR at line 1:
ORA-00920: invalid relational operator//*
答案 0 :(得分:3)
不确定为什么你的工作没有这样:
select dname
from distributor
where lower(dname) like '%a%'
and lower(dname) like '%b%'
但这会让任何拥有' a' and
a' b'
如果您使用or
,这将使每个人都拥有一个' a'每个人都有' b'
答案 1 :(得分:2)
删除查询中第二个字母前的空格应该有效:
select * from distributor where dname like '%b%a%' or dname like '%a%b%'