Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Sqlplus Oracle中对结果进行分组_Sql_Group By_Oracle11g - Fatal编程技术网

如何在Sqlplus Oracle中对结果进行分组

如何在Sqlplus Oracle中对结果进行分组,sql,group-by,oracle11g,Sql,Group By,Oracle11g,我想显示书名、名字以及副本数量。当我运行该查询时,它会给出一个错误消息“to group”。但当我分组时,它并不是对分组的一种表达。有人能帮我吗 SELECT bk.BookTitle, au.FirstName, COUNT(bkc.BookCopyID), rb.ReservedDate FROM Book bk, Book_Author ba, BookCopy bkc, ReserveBook rb, Author au WHERE bkc.BookID = bk.Book

我想显示书名、名字以及副本数量。当我运行该查询时,它会给出一个错误消息“to group”。但当我分组时,它并不是对分组的一种表达。有人能帮我吗

SELECT bk.BookTitle, au.FirstName, COUNT(bkc.BookCopyID), rb.ReservedDate 
FROM Book bk, Book_Author ba, BookCopy bkc, ReserveBook rb, Author au 
WHERE 
    bkc.BookID = bk.BookID 
    AND ba.BookID = bkc.BookID 
    AND ba.AuthorID = au.AuthorID 
    AND bkc.BookCopyID = rb.BookCopyID 
    AND rb.ReservedDate >= trunc(trunc(sysdate,'MON')-1,'MON') 
    AND rb.ReservedDate < trunc(sysdate,'MON') 
GROUP BY bkc.BookCopyID;
选择bk.BookTitle、au.FirstName、COUNT(bkc.BookCopyID)、rb.ReservedDate
来自bk图书,图书作者ba,图书副本bkc,ReserveBook rb,作者au
哪里
bkc.BookID=bk.BookID
和ba.BookID=bkc.BookID
ba.AuthorID=au.AuthorID
并且bkc.BookCopyID=rb.BookCopyID
和rb.ReservedDate>=trunc(trunc(sysdate,'MON')-1,'MON'))
和rb.ReservedDate
删除您的
分组依据
语句并添加该语句

Group by bk.BookTitle,au.FirstName,rb.ReservedDate

假设你所有的where条件都是正确的,并且你知道你在做什么。

有人会编辑这篇文章吗?