来自多个表的Oracle Query

时间:2013-03-24 07:33:39

标签: sql oracle

  1. 确定在订单1002上购买的图书产生的总利润额。显示 书名和利润。利润应格式化为显示美元符号和两个 小数位。
  2. ZJLB_ORDERITEMS包含ORDER#,ISBN

    ZJLB_BOOKS包含ISNB,TITLE,RETAIL,COST

    SELECT ISBN
    FROM ZJLB_ORDERITEMS
    WHERE ORDER# = '1002';
    

    (然后我得到输出8843172113)

    SELECT TITLE,
           TO_CHAR(RETAIL - COST, '$99,999.99') "Profit"
    FROM ZJLB_BOOKS,
    WHERE ISBN = '8843172113';
    

    (然后我得到了我想要的标题)

    但我需要将两个脚本组合在一起,因为我无法先手动查找ISBN,然后输入WHERE ISBN = '8843172113';

    我可以先将脚本中找到的ISBN值输出到X,然后在脚本2中输出ISBN = X(上一个结果)。

1 个答案:

答案 0 :(得分:2)

您可以使用JOIN子句:

  

SQL连接子句组合了两个或多个表中的记录   数据库

试试这个:

SELECT A.ISBN, B.TITLE, TO_CHAR(B.RETAIL - B.COST, '$99,999.99') "Profit"

FROM ZJLB_ORDERITEMS A JOIN ZJLB_BOOKS B

ON A.ISBN = B.ISBN

WHERE A.ORDER# = '1002';

有关联接概念,请参阅here