1

我浏览了几页,但找不到我需要的东西。我发现的东西让我得到了一些“有效”的东西,但不是我想要的。

SELECT p.ProductName, p.QuantityPerUnit, s.CompanyName, c.CategoryName
FROM Products AS p, Suppliers AS s, Categories AS c
WHERE p.QuantityPerUnit LIKE "*" & [500 g] & "*" AND p.SupplierID = s.SupplierID AND p.CategoryID = c.CategoryID
ORDER BY p.ProductName;

当我在 Access DB 上运行它时,会弹出一个窗口供输入文本。它有 500 克作为标签。如果我在文本字段中输入 500 g,则查询有效。我想要的是能够使用 500 g 作为子字符串运行查询,无需用户交互即可找到。我知道我很接近,但不确定什么是不正确的。

我能够弄清楚这一点。问题是“[]”。我将它们切换为单个“”,它运行显示预期数据而无需用户干预。

WHERE p.QuantityPerUnit LIKE "*" & '500 g' & "*"

感谢您花时间查看我的问题。

4

1 回答 1

3

Access 中的通配符“*”。您在 SQL Server 中使用百分号。取出括号。

WHERE p.QuantityPerUnit LIKE "*500 g*" AND p.SupplierID = s.SupplierID AND p.CategoryID = c.CategoryID
于 2013-09-11T23:51:58.433 回答