嵌套子查询/ NOT IN语句,如何?

时间:2015-10-12 09:00:13

标签: sql vba

我目前正在创建一个脚本来帮助规划时间表。学校课程在某些日子都有模块。每个事件(类/模块/日)都存储在一个由VBA脚本填充的表中。现在我的问题是:

如果他们昨天没有上课但是前一天没有上课,那么这些课程不应该有。为避免这种情况,该类具有以下模式(X = class,_ = Day off):

X_X_X_X

XX_X__很好 X 很好 XXX__X也没关系

要做到这一点,我需要从类列表中选择每个类,除了那些没有日期为"昨天" (存储在循环中的变量中)但具有前天的日期(也存储)。

在伪代码中:

SELECT * from Schoolclasses WHERE NOT IN (SELECT * from Schoolclasses WHERE
EXISTS date = yesterday BUT NOT EXISTS date = daybeforeyesterday)

任何想法?

编辑:到目前为止尝试的方法:

a = SELECT * FROM classes; 
b = SELECT Count(*) FROM timetable WHERE class = a AND date = yesterday; 
c = SELECT Count(*) From timetable WHERE class = a AND date = daybeforeyesterday; 
If (b = 0) and (c = 1) Then Skip_Class Else Plan_Class EndIf

0 个答案:

没有答案