0

私は明日データベーステストを行い、誰かが私のためにこの答えを確認できることを望んでいます。私がこれのスキーマを持っているとしましょう:

branch (branch_name, branch_city, assets)
customer (customer_name, customer_street, customer_city)
account (account_number, branch_name, balance)
loan (loan_number, branch_name, amount)
depositor (customer_name, account_number)
borrower (customer_name, loan_number)

私が興味を持っている質問は、「5000ポンドを超えるローンを持っているが、残高が500ポンドを超えるアカウントを持っていないすべての顧客の名前を見つけること」です。

元のコード:

π customer_name
  (σ amount > 5,000 ^ balance < 500 
    (borrower ⋈ loan ⋈ depositor ⋈ account))

編集:Erwin Smoutのアドバイスを見て、コードを次のように修正しました。

π customer_name
  (σ amount > 5,000 (borrower ⋈ loan))
-
π customer_name
  (σ balance < 500 (depositor ⋈ account))   

あれは正しいですか?

4

2 に答える 2

3

いいえ、正しくありません。「しかし[アカウントを持っていない]...」という表現は、どこかで関係差分演算子を使用する必要があることを示しています。

于 2012-11-19T21:50:07.143 に答える
0

正しいことがわかったので、自分の質問に答えます。助けてくれたすべての人に感謝します:

π customer_name (σ amount > 5,000 (borrower ⋈ loan))    
-
π customer_name (σ balance < 500 (depositor ⋈ account))   
于 2012-11-20T17:51:39.400 に答える