私はこのレコードのための記憶媒体テーブルを持っています。erlang - タプルの内容をqlcとmnesiaとどのように一致させることができますか?
-record(peer, {
peer_key, %% key is the tuple {FileId, PeerId}
last_seen,
last_event,
uploaded = 0,
downloaded = 0,
left = 0,
ip_port,
key
}).
Peer_keyは今、特定のファイルIDを持つすべてのピアからip_portフィールドを抽出する必要があり、タプル{FILEID、ClientIdを}です。
私は実行可能な解決策を考え出したが、これは良い方法であるかどうかはわからない:
qlc:q([IpPort || #peer{peer_key={FileId,_}, ip_port=IpPort} <- mnesia:table(peer), FileId=:=RequiredFileId])
感謝。