2013-08-01 2 views
1

Я заграничный студент, поэтому я не знаком с «Кредитной системой», но у меня есть вопрос с базой данных, который связан с ним. Я просто не мог понять это хорошо.Система кредитов клиентов, оракул 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

Предполагая, что 'Balance' содержит сумму, которую можно сравнить с кредитным лимитом клиента. –

Смежные вопросы