在oracle中检索数据

在oracle中检索数据,oracle,Oracle,表说明: BRANCH(Branchid、Branchname、HOD) 学生(USN、姓名、地址、Branchid、sem) 图书(书号、书名、作者、出版商、Branchid) 作者(作者、作者姓名、国家、年龄) 借阅(USN、Bookid、借阅日期) Q1)显示借用多个作者书籍的学生详细信息。 问题2)列出借书的学生的详细信息,这些书都是由同一家出版社出版的 Publisher.试试这个: SELECT S.NAME AS "STUDENT NAME" ,S.A

表说明:

BRANCH(Branchid、Branchname、HOD) 学生(USN、姓名、地址、Branchid、sem) 图书(书号、书名、作者、出版商、Branchid) 作者(作者、作者姓名、国家、年龄) 借阅(USN、Bookid、借阅日期)

Q1)显示借用多个作者书籍的学生详细信息。 问题2)列出借书的学生的详细信息,这些书都是由同一家出版社出版的 Publisher.

试试这个:

SELECT  
 S.NAME             AS "STUDENT NAME"
,S.ADDRESS          AS "STUDENT ADDRESS"
,BW.BORROWED_DATE   AS "DATE BORROWED"
,BR.BRANCHNAME      AS "BRANCE NAME"
,BK.BOOKNAME        AS "NAME OF BOOK"
,BK.PUBLISHER       AS "BOOK PUBLISHER"
,A.AUTHORNAME       AS "NAME OF AUTHOR"
,A.COUNTRY          AS "COUNTRY OF AUTHOR"
,A.AGE              AS "AGE OF AUTHOR"
---
FROM 
STUDENT S
---
JOIN BORROW BW
    ON S.USN = BW.USN
--- 
JOIN BOOK BK
    ON BW.BOOKID = BK.BOOKID
--    
JOIN BRANCH BR
    ON BR.BRANCHID = BK.BRANCHID
---
JOIN AUTHOR A
    ON BK.AUTHORID = A.AUTHORID
--
--
JOIN (SELECT P1
        FROM (
            SELECT 
             SS_S.USN       "P1"
            ,SS_A.Authorid  "P2"
            FROM 
            STUDENT SS_S
            JOIN BORROW SS_BW
                ON SS_S.USN = SS_BW.USN
            JOIN BOOK SS_BK
                ON SS_BW.BOOKID = SS_BK.BOOKID
            JOIN AUTHOR SS_A
                ON SS_BK.AUTHORID = SS_A.AUTHORID
            GROUP BY 
             SS_S.USN
            ,SS_A.Authorid
            HAVING COUNT(SS_A.Authorid) > 1
        )
    ) SUB_Q
ON S.USN = SUB_Q.P1
ORDER BY 1, 3
第二个问题很简单

SELECT  
 S.NAME             AS "STUDENT NAME"
,S.ADDRESS          AS "STUDENT ADDRESS"
,BW.BORROWED_DATE   AS "DATE BORROWED"
,BR.BRANCHNAME      AS "BRANCE NAME"
,BK.BOOKNAME        AS "NAME OF BOOK"
,BK.PUBLISHER       AS "BOOK PUBLISHER"
,A.AUTHORNAME       AS "NAME OF AUTHOR"
,A.COUNTRY          AS "COUNTRY OF AUTHOR"
,A.AGE              AS "AGE OF AUTHOR"
---
FROM 
STUDENT S
---
JOIN BORROW BW
    ON S.USN = BW.USN
--- 
JOIN BOOK BK
    ON BW.BOOKID = BK.BOOKID
--    
JOIN BRANCH BR
    ON BR.BRANCHID = BK.BRANCHID
---
JOIN AUTHOR A
    ON BK.AUTHORID = A.AUTHORID
--
WHERE 
BK.PUBLISHER = ''

你用什么来获取信息?您只是在寻找SQL查询吗?是的。只是一个sql查询,你的家庭作业中哪一部分给了你一个问题?@APC哈哈哈,是的,我也这么认为。好吧,我愿意帮忙,但不是用半句话,也没有任何描述。“不行”对我来说就是不行-您是否收到错误,它是否没有返回任何结果?您不包括数据的格式或示例数据集。可能存在转换问题或许多其他问题-需要输入。我已经创建了一个数据库,并用虚拟信息填充它。上面编辑的代码不起作用。我创建了一个示例