2013-02-21 95 views
0

我這個表的人訂單記錄的ID在二郎山

-record(person, {id, firstname, lastname, phone}). 

,它包含此值:

12 alen  dumas  97888888 
15 franco mocci  55522225 
13 ali  othmani 44444449 

我想通過ID訂購此表 ,它應該變成這樣:

12 alen  dumas  97888888 
    13 ali  othmani 44444449 
    15 franco mocci  55522225 
+0

將它們排列在**什麼**?你如何存儲這些記錄? – rvirding 2013-02-21 10:32:03

+0

按身份證號碼訂購記錄(12 13 15) – 2013-02-21 11:38:46

回答

1

要訂購元組Š存儲在mnesia你需要:

  • 讀取所有在mnesia之外記錄和整理它們,

如:

Select = [{#person{_ = '_'}, [], ['$_']}], 
Sorted = lists:sort(mnesia:dirty_select(person, Select)), 
erlang:hd(lists:reverse(Sorted)). 

這將讓所有的記錄,將它們進行排序元組(這應該是足夠的考慮id在記錄中的第一個元素,如果不使用lists:sort/2並指定排序功能),然後顛倒列表並返回第一個元素(在Erlang中,它更快地反轉並獲取第一個元素,而不是返回列表的最後一個元素)。