select ename from tab2 where (empno,ename) = (select empno,ename from tab3 where deptno=10);
单行子查询返回多个行;下面这确可以
with tab2 as(select 2 empno,'zhang' ename from dual
union all
select 3 empno,'lise' ename from dual)
SELECT ename FROM tab2 WHERE (empno,ename) = (
with tab3 as (select 3 empno,'lise' ename, 604 dname from dual )
SELECT empno,ename FROM tab3 WHERE dname = 604)
单行子查询返回多个行;下面这确可以
with tab2 as(select 2 empno,'zhang' ename from dual
union all
select 3 empno,'lise' ename from dual)
SELECT ename FROM tab2 WHERE (empno,ename) = (
with tab3 as (select 3 empno,'lise' ename, 604 dname from dual )
SELECT empno,ename FROM tab3 WHERE dname = 604)
select ename from tab2 where (empno,ename) = (select max(empno),max(ename)from tab3 where deptno=10);
select ename from tab2 where (empno,ename) = (select max(empno),max(ename)from tab3 where deptno=10);
我不是要MAX或MIN怎么办?
要and
empno=(select empno from tab3 where deptno=10) and ename=(select empno from tab3 where deptno=10)
select ename from tab2 where (empno,ename) in (select empno,ename from tab3 where deptno=10);