所以我有一个关系:
汽车(模型,乘客)
这些模型都是独一无二的,比方说{A,B,C,D,E}。
乘客只是汽车的容量(任何正的非零整数),让我们说{1,2,2,3,3}
Model|Passenger
A |1
B |2
C |2
D |3
E |3
我需要找到关系代数表达式,它会产生多于1辆车辆的容量。因此,使用上面的示例值,表达式应该返回{2,3},因为它们对于不同的车辆不止一次出现。
我非常倾向于认为表达式会使用某种联接,但我无法弄清楚如何做到这一点。
答案 0 :(得分:1)
我明白了:
假设现有关系汽车(模型,乘客)包含所有相关汽车及其乘客容量。
CARS2(model,passenger)≔ρ_(m,p) (CARS)
Answer (passenger)≔π_passenger (CARS⋈_(model ≠ m AND passenger=p) CARS2)
答案 1 :(得分:0)
我不确定关系代数表达式,它可能看起来像
π Passenger σ Count(Model) >= 2 G Passenger (Table1)
但如果您正在查找查询而不是其中包含JOIN
SELECT passenger
FROM table1
GROUP BY passenger
HAVING COUNT(model) >= 2
结果:
| PASSENGER | |-----------| | 2 | | 3 |
这是 SQLFiddle 演示