2013-08-01 32 views
1

我是一名海外學生,所以我不熟悉「學分制」,但我有一個與它有關的數據庫問題。我無法理解。客戶信用系統,oracle SQL

這問題:

編寫一個查詢: 計費官員想知道哪些客戶是目前在他們的信用額度。

數據庫的模式是:

Sales_Rep (SLSRep_Number [pk], Last, First, Street, City, State, Post_Code, 
Total_Commission, Commission_Rate) 
Customer (Customer_Number [pk], Last, First, Street, City, State, Post_Code, 
Balance, Credit_Limit, SLSRep_Number [fk]) 
Orders (Order_Number [pk], Order_Date, Customer_Number [fk]) 
Part (Part_Number [pk], Part_Description, Units_on_Hand, Item_Class, Warehouse_Number, Unit_Price) 
Order_Line (Order_Number, [pk1] Part_Number [pk2], Number_Ordered, Quoted_Price) 

任何想法?

是,僅僅:

Select customer_number,last,first,balance,credit_limit 
from customer 
where balance > credit_limit; 

或可能是:

select * from 
    (select mytable.customer_number,sum(mytable.number_ordered*mytable.quoted_price) as customer_cost from 
     (select customer.customer_number,order_line.number_ordered,order_line.quoted_price 
     from customer,orders,order_line 
     where customer.customer_number = orders.customer_number 
     and orders.order_number = order_line.order_number) mytable 
    group by mytable.customer_number) mytable2,customer 
where customer.credit_limit < mytable2.customer_cost 
and customer.customer_number = mytable2.customer_number; 
+0

我不認爲這是糟糕的英語,所以刪除了你的評論。 ;) – Romesh

回答

0

第一個查詢是正確的,它會給誰擁有平衡超出信用額度的客戶。

+0

假設'餘額'是持有金額與客戶的信用額度進行比較。 –