【发布时间】:2015-09-21 16:17:06
【问题描述】:
为了创建满足某些条件的订单列表(每个包含多个项目),我尝试创建一个典型的LEFT JOIN 语句。
尝试看起来像这样
SELECT
Q1.Order_Number,
OD.Item_Num
FROM
(
SELECT
OS.Order_Number
FROM
[4-Open_Order_Summary] AS OS
WHERE
Date() >= OS.Ship_Date AND
OS.Back_Ordered > 0
)
AS Q1
LEFT JOIN [1-Open_Order_Data] AS OD
ON Q1.Order_Number = OD.Order_Number
运行此查询会给我一个无法解释的“无效操作”错误。研究有关 Access SQL 的此错误使我在 StackOverflow 上提出了与多个不同类型的多个 JOIN 语句有关的 this 问题,以及与 FULL OUTER JOIN 语句有关的 SuperUser 分支上的 this 问题。但是,我找不到与单个 LEFT JOIN 语句相关的问题。
为了解决这个问题,我做了以下事情;
更改ON Q1.Order_Number = OD.Order_Number 为ON Q1.Order_Number LIKE OD.Order_Number
访问崩溃
跑步
SELECT
Q1.Order_Number,
FROM
(
SELECT
OS.Order_Number
FROM
[4-Open_Order_Summary] AS OS
WHERE
Date() >= OS.Ship_Date AND
OS.Back_Ordered > 0
)
AS Q1
返回预期的订单号。
【问题讨论】:
标签: sql join ms-access-2007