当前位置: 代码迷 >> Oracle管理 >> 跪SQL语句,请
  详细解决方案

跪SQL语句,请

热度:28   发布时间:2016-04-24 05:20:41.0
跪求一个SQL语句,请高手指点
有三张表,企业表、企业操作员表、操作记录表



企业表E
EID ENAME 


企业操作员EUSER
USERID USERNAME


操作历史记录表JNL
JNLID JNLDATA JNLTIME



其中一个企业下面有N个操作员
现在想统计出从未有操作员登录过本系统的企业(请注意是企业)
尽量不要用IN、NOT IN的写法,用最优化的写法

------解决方案--------------------
用not exists试试看?
SQL code
select * from E where not exists (select 1 from EUSER u, JNL j where u.userid=u.userid and e.eid=u.eid )
------解决方案--------------------
使用NOT EXIST和相关子查询。
代码如下:
SQL code
SELECT E.ENameFROM EWHERE NOT EXISTS(SELECT * FROM EUSER, JNL WHERE EUSER.USERID = JNL.USERID AND EUSER.EID = E.EID);
  相关解决方案