我正在Access 2010中编写一个SQL查询并收到一条错误消息,指出我选择的字段用于多个关系,所以我需要从一个表中选择。我认为我有正确的代码,明确告诉它选择哪个表,但我仍然得到错误。
这是我的代码:
SELECT I.ingredientID, ingredientTypeCode, ingredientName, amount, unitCode
FROM Ingredient AS I
INNER JOIN BatchIngredient AS B ON I.ingredientID=B.ingredientID
ORDER BY ingredientID;
不应该指定I.ingredientID说它会从Ingredient中提取ingredientID并忽略BatchIngredient吗?
答案 0 :(得分:1)
如果两个表中都存在ingredientID
,则数据库引擎会发现这个含糊不清......
ORDER BY ingredientID
我认为你需要......
ORDER BY I.ingredientID
我会继续在SELECT
子句中添加别名。用适当的别名替换每个X
。
SELECT I.ingredientID, X.ingredientTypeCode, X.ingredientName, X.amount, X.unitCode