【问题标题】:Is the join expression not supported by MS Access?MS Access 不支持连接表达式吗?
【发布时间】:2010-10-13 14:58:27
【问题描述】:

谁能向我解释我的查询出了什么问题?

SELECT T2.TIPOPRODUTO
    , T2.PRODUTO
    , T1.ESPESSURA
    , '' AS LARGURA
    , '' AS COMPRIMENTO
    , '' AS [ACABAM REVEST]
    , '' AS [ESPECIF QUALIDADE]
    , T1.CÓDIGORASTREABILIDADE
    , T3.DATA
    , T4.NOMEFANTASIA
    , T7.NOME
    , T5.DT_INICIO_RESERVA
    , T1.PESO
    , T5.DT_FIM_RESERVA
    , '' AS DESTINO
    , T3.OBSERVAÇÃO
    , '' AS [CUSTO TOTAL]
FROM ([TABELA DE PRODUTOS/ESTOQUE] LEFT OUTER JOIN [TABELA DE PRODUTOS] ON ([TABELA DE PRODUTOS/ESTOQUE].PRODUTO=[TABELA DE PRODUTOS].ID))
, [TABELA DE PRODUTOS/ESTOQUE ] AS T1
    , [TABELA DE PRODUTOS] AS T2
    , [TABELA DE MOVIMENTAÇÃO DE ESTOQUE] AS T3
    , [TABELA DE FORNECEDORES] AS T4
    , RESERVAS_PRODUTOS_ESTOQUE AS T5
, [TABELA DE MOVIMENTAÇÃO DE PRODUTOS/ESTOQUE] AS T6
    , [TABELA DE USUÁRIOS] AS T7
    , [TABELA DE PEDIDOS DE COMPRA] AS T8
WHERE (((T1.Produto)=[T2].[ID]) 
    AND ((T1.ID)=[T5].[ID_PRODUTO_ESTOQUE]) 
    AND ((T5.id_vendedor)=[T7].[ID]) 
    AND ((T3.ID)=[T6].[ID]) 
    AND ((T2.ID)=[T6].[PRODUTO]) 
    AND ((T4.ID)=[T8].[FORNECEDOR]) 
    AND ((T8.Comprador)=[T7].[ID]));

我最好的猜测是它在这条线上失败了:

([TABELA DE PRODUTOS/ESTOQUE] LEFT OUTER JOIN [TABELA DE PRODUTOS] ON ([TABELA DE PRODUTOS/ESTOQUE].PRODUTO=[TABELA DE PRODUTOS].ID))

【问题讨论】:

  • 这是一个看起来有点奇怪的查询,因为您有许多未连接任何东西的表。据我所知,唯一适用于您的设置的连接是 INNER JOIN。但是,您可能需要重新考虑您的设计。
  • LEFT OUTER JOIN 不是 Jet SQL 语法。它使用 LEFT JOIN 和 RIGHT JOIN,但省略了“OUTER”。我不能说它是否 100% 等同于你在其他 SQL 方言中得到的。
  • @David W. Fenton:你测试过你的断言吗?我在 Jet 3.51、Jet 4.0 和 ACE (2007) 中进行了测试,并且 LEFT OUTER JOIN 对所有版本都有效。在我看来,如果您不测试您的 SQL,那么将其作为答案发布是没有用的。

标签: ms-access join


【解决方案1】:

您将连接语句与“经典连接”(在 where 语句中带有条件的表的逗号分隔列表)混合在一起,我认为这是不允许的。

将查询更改为仅使用连接语句。在 Access 中,您必须使用括号对联接进行配对,方式如下:

from (((t1 join t2 on ...) join t3 on ...) join t4 on ...)

【讨论】:

    猜你喜欢
    • 2017-04-12
    • 2018-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-11
    • 1970-01-01
    • 1970-01-01
    • 2016-04-18
    相关资源
    最近更新 更多