SQL: 从y_account中选择帐户,其中id> 5
Mnesia qlc:
F = fun() ->
Q = qlc:q([E#y_account.account || E <- mnesia:table(y_account), E#y_account.id>5]),
qlc:e(Q)
end,
mnesia:transaction(F).
我可以像这样在mnesia中选择数据。 但是如何选择包含&#39;或&#39;的数据,就像这个SQL:
从y_account中选择帐户,其中id> 5或name =&#39; joe&#39;
谢谢, 最好的问候
答案 0 :(得分:1)
我没有检查是否有更有效的方法,但你可以替换
E#y_account.id>5
的 (E#y_account.id>5) orelse (E#y_account.name == "joe")
答案 1 :(得分:1)
使用operator or
:
F = fun() ->
Q = qlc:q([E#y_account.account ||
E <- mnesia:table(y_account), (E#y_account.id > 5) or (E#y_account.name == "joe")]),
qlc:e(Q)
end,
mnesia:transaction(F).