读书人

一道两个字段的SQL语句解决方案

发布时间: 2012-01-01 23:10:55 作者: rapoo

一道两个字段的SQL语句
有一个表“水果供应商”
字段1“供应商” 字段2“水果”
两个字段共为主键
数据库里的格式如下:
A 苹果
A 桔子
B 苹果
B 香蕉



现在 A供应商 不干了
求出 所有能替代 A供应商 的 供应商名单(既供应商A 能供应的所有水果,名单上的每一个供应商都能 独立供应)

[解决办法]
不对

SELECT 供应商
FROM 水果供应商 t1
WHERE EXISTS
(
SELECT 1
FROM 水果供应商 t2
WHERE t2.供应商 = 'A ' AND t2.水果 = t1.水果
)
AND 供应商 != 'A '
GROUP BY 供应商
HAVING COUNT(*) = (SELECT COUNT(*) FROM 水果供应商 WHERE 供应商 = 'A ')

读书人网 >C#

热点推荐