我有两个表。使用SQL我想从一个名称池中查找名称。例如:使用两个表中的匹配ID显示名称并从名称池中返回名称值
if foodid1 = foodID return foodName,
if foodid2 = foodID return foodName,
if foodid3 = foodid return foodname
我的表是这样的:
food table order table
FoodID FoodName OrderID FoodID1 FoodID2 FoodID3
1 chicken 1 1 2 3
2 fish 2 3 4 5
3 lamb 3 1 3 2
4 pie
5 steak
我想返回一个值类似的查询:
OrderID FoodID1 FooDID2 FoodID3
1 chicken fish lamb
2 lamb pie steak
3 chicken lamb fish
我能得到它,以显示相关的ID和第一组名称,但当我更改代码时出现错误。不确定此查询的正确语法。
SELECT [ORDER TABLE].OID, [ORDER TABLE].FID1, [FOOD TABLE].[Food Name], [ORDER TABLE].FID2
FROM [FOOD TABLE] INNER JOIN [ORDER TABLE] ON [FOOD TABLE].[FID] = [ORDER TABLE].[FID2];
日这个答案的问题是,它排除了值为0的字段。我试图包括where order.fid1 = 0和order.fid1 = food.fid –
你是什么意思为零?你的意思是空吗? – SandPiper
如果单元格为空,则单元格被忽略,如果单元格被忽略,则它将无法显示该行的其余部分的值,因为它没有在所有单元格中的值 –