Sql 包含中间函数的联接

Sql 包含中间函数的联接,sql,ms-access,substring,left-join,Sql,Ms Access,Substring,Left Join,我试图在ON子句中使用mid进行请求 SELECT .... FROM T1 as t1 LEFT JOIN T2 as t2 on MID(t1.f1, 1, 13) = MID(t2.f2, 1, 13) 它拒绝工作 JOIN expression not supported 如果我在没有mid的情况下运行完全相同的查询,那么它工作得非常好(execpt我没有得到我想要的walue) 我试图将MID具体化为两个请求。但它仍然不能与mid一起工作(也不能与mid一起工作) 如何执行此请求?

我试图在ON子句中使用mid进行请求

SELECT ....
FROM T1 as t1 LEFT JOIN T2 as t2 on MID(t1.f1, 1, 13) = MID(t2.f2, 1, 13)
它拒绝工作

JOIN expression not supported
如果我在没有mid的情况下运行完全相同的查询,那么它工作得非常好(execpt我没有得到我想要的walue)

我试图将MID具体化为两个请求。但它仍然不能与mid一起工作(也不能与mid一起工作)


如何执行此请求?

否,Access仅支持按字段值连接,不支持按表达式连接。但是,您可以加入子查询:

SELECT ....
FROM (SELECT *, MID(t1.f1, 1, 13) KeyValue FROM T1) as t1 
LEFT JOIN (SELECT *, MID(t2.f2, 1, 13) KeyValue FROM T2) as t2
    ON t1.KeyValue = t2.KeyValue

我本来想说use WHERE,但后来我注意到它是一个左连接,所以。。。是的,+1.这就是我试图做的,当我说我将外部化为两个请求时,它仍然不起作用:JOIN expression not supportedaccess也通过expression支持加入fthiella:你是什么意思?