我正在尝试查询拥有所有计算机图书的用户。例如,我有两个表:SQL Server 2005如何查找拥有所有图书的用户
1)项目表
|itemid |item_name |
------------------------------
|1 | computerbook1 |
|2 | computerbook2 |
|3 | computerbook3 |
|4 | mathbook1 |
|5 | mathbook2 |
|6 | physicsbook |
2)userinventory表
|used_id | name_item |
-----------------------------
|1 | computerbook1 |
|1 | computerbook2 |
|1 | computerbook3 |
|2 | computerbook1 |
|2 | mathbook1 |
|2 | physicsbook |
|3 | computerbook1 |
|3 | computerbook3 |
由于用户 “1” 的所有计算机的书,我想作查询在返回用户1.
我所做的是......
Create Table #tmp (
Classname [varchar](50) NOT NULL
)
INSERT INTO #tmp
SELECT DISTINCT item_name
FROM ITEM
WHERE item_name like 'computerbook%'
我想比较找到用户谁拥有所有项目的..
不过,我真的不知道该怎么办呢..因为我不能用计数或任何聚集。
不要使用“计数”
不知道反正他们的方式找到谁拥有所有的电脑书的用户ID?
在您的示例数据,是USER_ID = 1你正在寻找的,因为它有computerbook1,computerbook2和computerbook3的人吗? – Griffin 2012-03-21 04:51:39
另外,为什么你不能使用计数?这是这个问题的一些要求吗?或者你只是假设计数不起作用? – Griffin 2012-03-21 04:56:20
@格里芬:谢谢你的回复,是的 – 2012-03-21 04:58:42