首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建查询,选择两列;(公司,第电影)从数据库

创建查询,选择两列;(公司,第电影)从数据库
EN

Stack Overflow用户
提问于 2012-03-29 22:45:49
回答 3查看 845关注 0票数 0

我已经创建了一个数据库作为大学作业的一部分,我遇到了标题中的问题。

更有可能的是,我被要求了解每家公司制作了多少部电影。这向我建议了一个group by查询。但是我不知道从哪里开始。这只是一个两分的问题,但语法在我的脑海中并不灵光。

我的方案是:

代码语言:javascript
复制
CREATE TABLE Movie
    (movieID CHAR(3) ,
    title CHAR(36),
    year NUMBER,
    company CHAR(50),
    totalNoms NUMBER,
    awardsWon NUMBER,
    DVDPrice NUMBER(5,2),
    discountPrice NUMBER(5,2))

还有其他表格,但乍一看,我认为它们与这个问题无关。

我正在使用sqlplus10

EN

回答 3

Stack Overflow用户

发布于 2012-03-30 01:18:33

如果您需要更多帮助来根据这些提示创建答案,请让我知道,我可以尝试继续指导您。

分组依据

代码语言:javascript
复制
SELECT list, fields, aggregate(value)
FROM tablename
--WHERE goes here, if you need to restrict your result set
GROUP BY list, fields

group BY查询只能返回GROUP by语句中列出的字段,或者返回作用于每个组的聚合函数。

聚合函数

用于统计返回的结果。

代码语言:javascript
复制
SELECT Count(*)
FROM tablename

这两者可以组合在一起,允许您通过以下方式获取每个组的计数。

代码语言:javascript
复制
SELECT list, fields, count(*)
FROM tablename
GROUP BY list, fields

列别名

另一个回答也试图向您介绍SQL列别名,但它们没有使用SQLPLUS语法。

代码语言:javascript
复制
SELECT Count(*) as count
...

代码语言:javascript
复制
SELECT Count(*) "count"
...
票数 4
EN

Stack Overflow用户

发布于 2012-03-29 22:49:23

我不打算向您提供SQL,而是一种思考它的方式。

您要做的是选择公司匹配的位置,并计算返回的总行数。这个数字是由指定公司制作的电影数量。

希望这能为你指明正确的方向。

票数 0
EN

Stack Overflow用户

发布于 2012-03-29 22:51:36

代码语言:javascript
复制
Select company, count(*) AS count 
from Movie 
group by company

select * group by company在甲骨文中不能工作。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9927772

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档