创建一个page内存表
ets:new(page,[set,named_table]).
插入一些测试数据
ets:insert(page,
[ {1,page1,english},
{2,page2,english},
{3,page3,english},
{4,page4,english},
{5,page5,english},
{6,page6,english},
{7,page7,english},
{8,page3,computer},
{9,page4,computer},
{10,page5,computer},
{11,page6,computer},
{12,page7,computer},
{13,page8,computer},
{14,page9,computer},
{15,page10,computer}
]).
查看记录是否插入
ets:tab2list(page).
[{7,page7,english},
{6,page6,english},
{15,page10,computer},
{4,page4,english},
{1,page1,english},
{11,page6,computer},
{9,page4,computer},
{10,page5,computer},
{8,page3,computer},
{13,page8,computer},
{2,page2,english},
{3,page3,english},
{14,page9,computer},
{5,page5,english},
{12,page7,computer}]
查询所有书,包括english和chinese
查询第一页,显示5条记录
{M1,C1}=ets:match(page,'$1',5).
{[[{2,page2,english}],
[{3,page3,english}],
[{14,page9,computer}],
[{5,page5,english}],
[{12,page7,computer}]],
{page,196,5,<<>>,[],0}}
查询第二页,显示5条记录
{M2,C2} = ets:match(C1).
{[[{11,page6,computer}],
[{9,page4,computer}],
[{10,page5,computer}],
[{8,page3,computer}],
[{13,page8,computer}]],
{page,234,5,<<>>,[],0}}
查询第三页,显示5条记录,并C3='end_of_table'
{M3,C3} = ets:match(C2).
{[[{7,page7,english}],
[{6,page6,english}],
[{15,page10,computer}],
[{4,page4,english}],
[{1,page1,english}]],
'$end_of_table'}
查询english
查询english的第一页,显示5条记录
{M11,C11}=ets:match(page,{'_','$1',english},5).
{[[page4],[page1],[page2],[page3],[page5]],
{page,123,5,<<>>,[],0}}
查询english的第二页,显示2条记录,C12='end_of_table'
{M12,C12} = ets:match(C11).
{[[page7],[page6]],'$end_of_table'}
erlang ets 分页
最新推荐文章于 2024-09-04 23:29:45 发布
本文介绍了如何在Erlang中使用ETS(Erlang Term Storage)进行内存分页操作。首先创建了一个名为page的ETS表,并插入了包含英语和计算机类别的测试数据。接着,展示了如何查询所有记录,以及如何分页查询第一页、第二页和第三页的数据。此外,还演示了针对英语类别进行分页查询的方法。
摘要由CSDN通过智能技术生成