由于有一个excle数据拼接成一个sql语句如
select s_landedcost,s_styleno,s_seasonyear,s_seasoncode
from t_style
where (s_styleno,s_seasonyear,s_seasoncode) in
('NH199','2005','N'
,'NH199','2005','N' );不知道可以否?
select s_landedcost,s_styleno,s_seasonyear,s_seasoncode
from t_style
where (s_styleno,s_seasonyear,s_seasoncode) in
('NH199','2005','N'
,'NH199','2005','N' );不知道可以否?
解决方案 »
- rac两个小机oracle10G+hpun,重建了重做日志文件恢复
- Oracle存储过程动态查询问题
- 如何得到oracle进程id和进程名称
- 求一数据汇总的SQL写法
- oracle数据.sql数据文件导入报错!
- 关于移动审计表sys.aud$到其它表空间的问题?
- 无法从Windows上登录linux下的oracle9i oms server???
- 急、急、急,各位大虾,关于ORacle表只读权限问题
- SQL SERVER 和 ORACLE 之间有什么现成的工具来实现数据的导入和导出吗?如果有,是什么,怎么操作呢?
- 请问,Oracle那个sql函数可以将10进制数转成16进制数
- 小弟请教一个关于PL/SQL工具的问题~
- oracle下数据文件.DBF的作用
'NH199','2005','N'
'NH199','2005','N'
是某个表t的三个列,c1 , c2 , c3select m.s_landedcost,m.s_styleno,m.s_seasonyear,m.s_seasoncode
from t_style m
where exists (select 1 from t where m.s_styleno = t.c1 and m.s_seasonyear = t.c2 and m.s_seasoncode = t.c3)select m.s_landedcost,m.s_styleno,m.s_seasonyear,m.s_seasoncode
from t_style m,t
where m.s_styleno = t.c1 and m.s_seasonyear = t.c2 and m.s_seasoncode = t.c3
from t_style
where (s_styleno,s_seasonyear,s_seasoncode) in
(
select 'NH199','2005','N' from dual
union all
select 'NH199','2005','N' from dual
)tb;
不可以这样写的,这样写oracle会报错
下面这样可以select *
from emp
where (job, deptno) in (SELECT JOB, DEPTNO FROM EMP WHERE DEPTNO = 20)
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO FLAG
----- ---------- --------- ----- ----------- --------- --------- ------ ----
7876 ADAMS CLERK 7788 1987-5-23 1100.00 20
7369 SMITH1 CLERK 7912 1980-12-17 800.00 20
7566 JONES MANAGER 7839 1981-4-2 2975.00 20
7902 FORD ANALYST 7566 1981-12-3 3000.00 20
7788 SCOTT ANALYST 7566 1987-4-19 3000.00 20
--可以这样
select s_landedcost, s_styleno, s_seasonyear, s_seasoncode
from t_style
where (s_styleno, s_seasonyear, s_seasoncode) in
(('NH199', '2005', 'N'),( 'NH199', '2005', 'N'));