[SQL ] 如何找出共同的項目
Hi all:
不知道標題這樣下是否恰當。
目前我的 DB table 存的是:
User Item Value
A I1 2
A I3 3
A I5 3
B I1 2
B I5 4
C I3 1
C I5 3
User是某個使用者、Item為某項目的標號、value則是一個簡單的數值。
我現在想要挑出每兩個user的共同項目資料跟各別數值,
例如: [A,B]={I1:2:2,I5:3:4} , [B,C]={I5:4:3} , [A,C]={I3:3:1;I5:3:3}
但我不知道該用甚麼樣的語法來解決效能會比較好,
我現在用的是很笨的brute force跑很多層迴圈來解,
如果有N個user那就會有N(N-1)/2個對應關係,
資料量很大的時候會浪費很多時間,
現在光parser table找出關係就要10分鐘效率極差,
想請教大家是否有更合適的語法建議。
Table的儲存格式與最後呈現的樣貌都是可以修改的,
主要是可以改善執行時間達到online update,
其他的問題就相對好解決了,
DBMS: MySQL
謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.35.163.196
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):