在SQL中不是条件
发布时间:2021-05-16 21:47:15 所属栏目:MsSql教程 来源:网络整理
导读:任何人都可以告诉我两列中SQL的NOT IN条件的确切语法. 这是我用VBA编写的查询. strNewSql = "SELECT distinct(tblRevRelLog_Detail.PartNumber),tblRevRelLog_Detail.ChangeLevel,tblRevRelLog_Detail.ID FROM tblRevRelLog_Detail LEFT JOIN tblEventLog ON
|
任何人都可以告诉我两列中SQL的NOT IN条件的确切语法. 这是我用VBA编写的查询. strNewSql = "SELECT distinct(tblRevRelLog_Detail.PartNumber),tblRevRelLog_Detail.ChangeLevel,tblRevRelLog_Detail.ID FROM tblRevRelLog_Detail LEFT JOIN tblEventLog ON tblRevRelLog_Detail.PartNumber = tblEventLog.PartNumber" strNewSql = strNewSql & " WHERE (tblEventLog.PartNumber) Not In(SELECT tblEventLog.PartNumber FROM tblEventLog WHERE tblEventLog.EventTypeSelected = 'pn REMOVED From Wrapper') AND tblEventLog.TrackingNumber = """ & tempTrackingNumber & """ AND tblEventLog.TrackingNumber = tblRevRelLog_Detail.RevRelTrackingNumber;" 我想改变这个子查询,它应该适用于两列的组合,如下所示: strNewSql = "SELECT tblRevRelLog_Detail.PartNumber,tblRevRelLog_Detail.ID FROM tblRevRelLog_Detail LEFT JOIN tblEventLog ON tblRevRelLog_Detail.PartNumber = tblEventLog.PartNumber" strNewSql = strNewSql & " WHERE (((tblEventLog.PartNumber,tblEventLog.PartNumberChgLvl) Not In(SELECT tblEventLog.PartNumber,tblEventLog.PartNumberChgLvl FROM tblEventLog WHERE tblEventLog.EventTypeSelected = 'pn REMOVED From Wrapper') AND tblEventLog.TrackingNumber = """ & tempTrackingNumber & """ AND tblEventLog.TrackingNumber = tblRevRelLog_Detail.RevRelTrackingNumber);" 但这不起作用….. 解决方法您不能将IN用于多个列,但通常可以使用EXISTS实现相同的效果:SELECT *
FROM tbl1
WHERE NOT EXISTS
(
SELECT *
FROM tbl2
WHERE tbl2.col1 = tbl1.col1
AND tbl2.col2 = tbl1.col2
) (编辑:三门峡站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sql-server – 为什么表使用其主键作为自身的外键
- 如何从ColdFusion中的查询对象获取SQL?
- 明基挥动王者之剑,17寸液晶2999创世纪
- sql-server – 为什么在Fact表中将NULL值映射为0?
- sql-server – 来自sql server的高磁盘I / O还是高磁盘I /
- Windows Server 2008 R2配置IIS7.5+PHP Manager+PHP5.3+Mys
- SCO宣称已注册Unix版权 股票大幅度上涨11%
- Windows Server 2003 SP1 Beta 1版本即将推出
- 初学者SQL问题:具有多个COUNT(*)结果的算术
- Windows Media Player也要播放RM
