[SQL ] 如何找出共同的項目

看板Database作者 (yida)時間14年前 (2012/01/16 21:56), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
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
文章代碼(AID): #1F52n_KE (Database)
文章代碼(AID): #1F52n_KE (Database)