2015-05-05 2 views
1

Я использую boss_db с erlang и chicagoboss. AFAIK, мы всегда должны стараться использовать минимальное количество запросов к базе данных. Прямо сейчас, я делаю два отдельных запроса для одного результата. Я предполагаю, что это можно сделать в одном запросе, но не знаю, как это сделать.фильтр на результаты запроса

Query1

Query2

ActiveLegalUserList = boss_db:find(user, 
    [{status, 'equals', active},{cid, 'equals', Cid},{legal, 'equals', true}]). 

Есть ли способ для достижения этой цели в одном запросе? нравится:

ActiveLegalUserList = ActiveUserList:filter({legal, 'equals', true}). 

ответ

1

Попробуйте lists:filter()

ActiveLegalUserList = lists:filter(fun(User) -> 
          User:legal() == true end, 
         ActiveUserList).