不懂说的是不是这个意思select *
from 表a
where (str>=A and str<=B)
or (str>=A and a>b)
or (str<=B and a>b)
from 表a
where (str>=A and str<=B)
or (str>=A and a>b)
or (str<=B and a>b)
解决方案 »
- oracle删除用户时报错,ORA-00604、ORA-01740
- 请教一下如何从oracle数据库中导出除一部分表外的其他所有数据,包括视图,触发器等
- 关于在SQLPLUS中使用sql语句的问题
- Insert into 在存储过程中的问题,不可以用order by ?
- 添加问题成功 oracle根据表中的某个字段,按照这个字段把它分范围查询
- 两台机器上装有不同ORACLE版本,相互间无法连接
- view
- 根据网上大家所说的方法建立两个数据库之间的数据库链接进行访问,还是提示出错信息“无法处理服务名”,详情内附,请大家帮忙!
- 请问有谁知道连接Oracle9i的ADO驱动程序?
- 怎么用sql语句处理字段相加
- sql语句分类汇总,排序查询语句怎么实现
- tomcat启动报错,ORA-22905: cannot access rows from a non-nested table item?是什么原因?
SELECT '6001','7000' FROM dual UNION ALL
SELECT '6001','0100' FROM dual )
SELECT *
FROM TEST
WHERE 0500 BETWEEN A AND
(CASE WHEN B < A THEN B + 10000 ELSE TO_NUMBER(B) END)
OR 0500 BETWEEN (CASE WHEN B < A THEN B - 10000 ELSE TO_NUMBER(B) END) AND A
重复了,亲。。
WITH test AS(SELECT '5000' a,'6000' b FROM dual UNION ALL
SELECT '6001','7000' FROM dual UNION ALL
SELECT '6001','0100' FROM dual )
SELECT *
FROM TEST
WHERE 5500 BETWEEN A AND
(CASE WHEN B < A THEN B + 10000 ELSE TO_NUMBER(B) END)
OR 5500 BETWEEN (CASE WHEN B < A THEN 0001 ELSE TO_NUMBER(A) END) AND B