作者pcstar (亮光)
看板Database
标题[SQL ] 如何select交叉筛选出使用者没有资料的项目
时间Thu Apr 10 23:28:58 2008
我用的是MS SQL Server 2005
抱歉标题的问题可能不够清楚 @@
目前有下列两个资料表item和rating
想要从中筛选出使用者间没有被共同评分过的项目
该如何写select条件式呢
item用来纪录被评分的项目
rating用纪录使用者对项目的评分
并已建立一个检视表Corating 表示使用者间皆评分过的项目
三张表示意如下
[Item]
item itemname
==== ========
1 aaaa
2 bbbb
3 cccc
4 dddd
[Rating]
username item rate
======== ==== ====
A 1 3
A 2 4
B 1 5
B 3 5
[Corating] View
user1 user2 item
===== ===== ====
A B 1
B A 1
如何利用这两个资料表和一个检视表找出:
各个user没有评分过,但有共同评分过某些项目的其他使用者所已评分过的项目,
希望结果如下:
username item
======== ====
A 3
B 2
ps. item 4因为互相都没有评分过,所以没有在结果集当中
请各位高手帮忙 谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.62.20.108
※ 编辑: pcstar 来自: 61.62.20.108 (04/10 23:29)