sql - 使用“LIKE”运算符的嵌套 MS Access SQL 查询
问题描述
我收到了大量文件,并且在 Excel 文件中实际上是“文档索引”。
我试图确定我们是否真的收到了索引中列出的所有文件。
我的问题是并非所有电子文件名都是正确的。
在某些情况下,电子文件名已添加描述或修订,因此无法直接查找 (JOIN),我想使用嵌套的 LIKE 语句:
问题的一个例子是我无法匹配以下对象:
tblINDEX.idxFilename
- tblFilename.dirFilename
RR-ASF-00-0111-000075
- RR-ASF-00-0111-000075Construction Details.pdf
以下查询 (JOIN) 仅查找直接匹配项:
SELECT tblINDEX.idxFilename, tblFilename.dirFilename
FROM tblINDEX LEFT JOIN tblFilename ON tblINDEX.idxFilename = dirFilename
WHERE tblFilename.filename Is Null Or tblFilename.filename Is Not Null;
下面的查询(LIKE)不显示空白/空值(缺少文件名)。
SELECT tblINDEX.idxFilename, tblFilename.dirFilename
FROM tblFilename, tblINDEX
WHERE tblFilename.dirFilename Like idxFilename & '*' Or tblFilename.dirFilename Is Null;
我的嵌套 'SELECT' 在嵌套的 SELECT 语句中返回语法错误。
SELECT tblINDEX.idxFilename
,(
SELECT tblFilename.filename
FROM tblFilename
WHERE tblFilename.filename Like tblINDEX.idxFilename & '*'
) AS 'idxFilename_FN'
FROM tblINDEX
;
我知道这种嵌套查询方法适用于 T-SQL,但很难让它在 MS Access 中运行。
解决方案
没试过,但是这个呢?
SELECT tblINDEX.idxFilename, tblFilename.dirFilename
FROM tblINDEX LEFT JOIN tblFilename ON tblFilename.filename Like tblINDEX.idxFilename & '*'
WHERE....
它必须在 SQL 视图中完成,并且会阻止切换回设计视图,但它应该可以工作。
推荐阅读
- python - 如何执行非整数平均池一个 1d numpy 数组?
- ruby-on-rails - 如何通过多个关联进行分组?
- c - How to stop reading a txt file at the end of it
- javascript - 显示自己的 Reactjs 列表
- ruby - Cocoapods 安装错误 mkmf.rb 找不到 ruby 的头文件
- hive - 运行 sql 时配置单元 UDF 如何运行?
- html - Safari css 显示椭圆而不是标签线
- assembly - MIX 中 STA (0:1) 的行为是什么?
- javascript - validateForm()有bug时如何避免onsubmit="return validateForm()"提交表单?
- django - 如何在我的 Django 项目中使用需要 conda 环境的第三方存储库