我试图在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)
我尝试将mids外部化为两个请求。但它仍然没有在中间工作(没有工作)。
我该怎么做这个请求?
答案 0 :(得分:3)
不,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