【发布时间】:2021-11-20 07:32:03
【问题描述】:
我的工作是管理一个允许学生访问课程材料的虚拟学习环境。每个“课程”都有一个特定的 ID(下面的示例 ID)。每个学年都会复制一份新的课程副本,并使用新的 ID 以及从模板中获取的相同内容和属性。
问题
从下面的示例数据中可以看出,当前课程没有设置访客访问属性,这会导致问题。
到目前为止的处理过程
我在 Postgres 中检索了所有 1201 和 1211 课程的完整列表,将它们导出到单独的 Excel 文件中,将它们导入 Access 并创建了与课程 ID 的关系。
这是我用过的Access中的SQL。
SELECT current.external_course_key, current.course_id, current.allow_guest_access
FROM [current]
INNER JOIN past ON past.external_course_key like current.external_course_key & "*";
我认为 REGEX 会对此有所帮助,但不幸的是,Access 没有这种能力。
要求
我需要检查过去和当前课程 ID 的访客访问属性,并检索存在差异的课程列表。
| COURSE ID | GUEST ACCESS |
|---|---|
| I3132-CHEN-10011-1201-1SE-016651 -> Last year's course | Y |
| I3132-CHEN-10011-1211-1SE-016651 -> Current course | N |
希望我已经详细解释了这一点。如果您需要更多,请不要犹豫。这个问题已经交给我了,是一个高优先级。
感谢任何帮助。
谢谢
【问题讨论】:
-
like 模式不也需要前导 * 吗?而且我还会包括破折号,例如
'*-12[0-1]1-*'. -
请注意,Access 可以连接到 Postgres 并在 Postgres 上执行直通查询,为您提供正则表达式支持,跳过 Excel 步骤并提供实时数据
标签: sql ms-access string-comparison