1

有没有办法为下面的代码创建一个可重用的查询模板,定义只更改WHERE部分?

WHERE .isCity我有多个查询,除了, WHERE .isStreet,之外看起来相同WHERE .isName

SELECT [TableA].word
FROM 
(
    (TableA INNER JOIN ATO ON [TableA].ID=ATO.ID) 
    INNER JOIN 
    TableB 
        ON TableB.word=[TableA].word) 
INNER JOIN CLA 
    ON CLA.[ID]=TableB.lang
WHERE [ATO].isCity;

诚然,这看起来很糟糕,但这不是重点。

4

1 回答 1

4

您可以在字符串变量中使用模板 SQL 创建 VBA 过程,然后Replace()根据需要使用替换子字符串。这是立即窗口中的一个示例。

strTemplate = "WHERE [ATO].PLACEHOLDER"
? Replace(strTemplate, "PLACEHOLDER", "isCity")
WHERE [ATO].isCity
于 2013-09-23T01:09:59.063 回答