国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

SQL自連接(源于推薦算法中的反查表問題)

2024-07-21 02:50:14
字體:
供稿:網(wǎng)友
SQL自連接(源于推薦算法中的反查表問題)

  ”基于用戶的協(xié)同過濾算法“是推薦算法的一種,這類算法強(qiáng)調(diào)的是:把和你有相似愛好的其他的用戶的物品推薦給你。

  要實(shí)現(xiàn)該推薦算法,就需要計(jì)算和你有交集的用戶,這就要用到物品到用戶的反查表

  先舉個(gè)例子說明下反查表:甲喜歡的物品有:A、B、C;乙喜歡的物品有:B、E、F;丙喜歡的物品有:A、J、K;而你喜歡的物品是:A、J、M。反查表就是喜歡A物品的有你、甲、丙,喜歡J物品的有你、丙,喜歡M物品的只有,這就是和你喜歡的物品有聯(lián)系的用戶。有了這個(gè)反查表,我們就可以看出和你有關(guān)系的用戶只有甲和丙,乙用戶和你沒有任何的交集。于是,接下來我們只需要再計(jì)算甲、丙和你的相似性,找出和你最相鄰的用戶,通過這個(gè)用戶來給你推薦物品。

  因此,我在實(shí)現(xiàn)基于用戶的協(xié)同過濾算法的第一步的關(guān)鍵是:通過SQL自連接,能夠反查到和你喜歡的物品有聯(lián)系的用戶。(自連接的定義By百度百科:自連接(self join)是SQL語句中經(jīng)常要用到的連接方式,使用自連接可以將自身表的一個(gè)鏡像當(dāng)做另一個(gè)表來對(duì)待,從而能夠得到一些特殊的數(shù)據(jù)。)

  我所建的評(píng)分信息表擁有的字段和數(shù)據(jù)(刪減版)如下圖所示:

圖1.評(píng)分信息表

其中,字段u_ID代表用戶ID,f_ID代表視頻ID,兩者都是另外兩張表的主鍵,score代表評(píng)分值。

  我所使用的自連接語句為(原語句放置于存儲(chǔ)過程中):

SELECT DISTINCT B.u_ID FROM tb_interest A,tb_interest B WHERE A.f_ID = B.f_ID AND A.u_ID = 2 AND B.u_ID<>2;
View Code

  執(zhí)行的結(jié)果截圖如下:

圖2.自連接語句執(zhí)行結(jié)果

  由結(jié)果我們可以知道,和用戶2有關(guān)聯(lián)的用戶為4、5,即用戶2評(píng)分過的視頻,用戶4和用戶5也評(píng)分過。這樣,我們利用SQL自連接語句,通過一句簡(jiǎn)單的SQL語句,就能夠反查到了所要的信息。

http://www.cnblogs.com/HellerTse/archive/2014/05/02/3703801.html


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 金门县| 外汇| 拉萨市| 九江市| 固安县| 南充市| 界首市| 龙海市| 桂平市| 鄂托克旗| 丰镇市| 汉川市| 江口县| 武穴市| 昌乐县| 本溪市| 高阳县| 嘉义市| 多伦县| 南江县| 九江县| 遵义市| 石台县| 岑巩县| 隆化县| 铁力市| 海林市| 泰宁县| 盐津县| 滨州市| 龙门县| 昌都县| 中江县| 张家界市| 雷山县| 汤原县| 泌阳县| 武清区| 黄梅县| 景东| 玉溪市|