gpt4 book ai didi

relational-algebra - 关系代数 - 表示 'having' 子句的正确方法是什么?

转载 作者:行者123 更新时间:2023-12-04 15:37:56 25 4
gpt4 key购买 nike

是的,这是一个家庭作业问题,但名称已更改以保护无辜者。意思是,我不是在问作业问题本身,而是问其中的一小部分,以便我可以理解整体。

假设您有一个这样的 SQL 查询:

-- 该查询将列出多次出现的汽车价格。

select car_price from cars
group by car_price
having count (car_price) > 1;

这个在关系代数中的一般形式是 Y (gl, al) R
其中 Y 是希腊符号,GL 是要分组的属性列表,AL 是聚合列表

所以关系代数看起来像:
 Y (count(car_price)) cars

那么,该语句中的“具有”子句是如何写的?有简写吗?如果没有,我是否只需要从该关系中进行选择?也许像这样的东西?
SELECT (count(car_price) > 1) [Y (count(car_price)) cars]

我已经在互联网上搜索了几个小时,但没有找到将 HAVING 转换为关系代数的例子。谢谢您的帮助!

最佳答案

select count(*) from (select * from cars where price > 1) as cars;

也称为关系闭包。

关于relational-algebra - 关系代数 - 表示 'having' 子句的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2069272/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com