【发布时间】:2015-02-28 02:22:50
【问题描述】:
如何在match_object命令中使用lists:member(User,users)?? 我有几条记录,其中“用户”是一个包含不同用户的列表,我想显示包含某个用户的记录。
find(User) ->
mnesia:transaction(fun () ->
case mnesia:match_object(#updt{**users==[User]**, _='_'}) of
[Y] ->io:format("Records found for the user : ~p~n", [Y]);
[] -> io:format("No group found with the user : ~p ~n",[User])
end
end).`
【问题讨论】:
-
您的记录在 Mnesia 中是什么样的?我不能从这段代码中看出很多,但我不确定你为什么不使用
mnesia:read/1?你能展示一下这个表是如何创建的吗? -
{atomic,[{updt,7,["ret"]}, {updt,6,["aas"]}, {updt,4,["adlf"]}, {updt ,1,["adlf","lojer","iowef"]}, {updt,2,["sfdgbs","5rf","grwg","irg"]}, {updt,3,["adlf "]}, {updt,5,["aas"]}]} 所以基本上我希望它显示表中包含例如 "adlf" 的条目,所以它应该能够显示第 1 行、第 3 行, 4