2016-03-20 24 views
2

私はクエリを書いていますが、問題が発生しました。未定義カラムのwhere句

select name, address, count(BL.card_no) 
from Book_Loans BL 
inner join Borrower B on BL.card_no = B.card_no 
where count(BL.card_no) > 1 group by name; 

それが言うので、私は「カウント(BL.card_no)> 1」を使用することはできませんので、これは動作しません「グループ機能の無効な使用を。」しかし、1より大きいカード番号だけが表示されていることを確認する必要があります。それ以外にどのようにすればいいですか?

答えて

2

あなたはHAVING句で述語を配置する必要があります。

select name, address, count(BL.card_no) 
from Book_Loans BL 
inner join Borrower B on BL.card_no = B.card_no 
group by name 
having count(BL.card_no) > 1; 
+0

が働いたのではなく、持つ、ありがとうございました! – TheBandit

2

集約関数を使用するために

select name, address, count(BL.card_no) 
from Book_Loans BL 
inner join Borrower B on BL.card_no = B.card_no 
group by name 
having count(BL.card_no) > 1; 
+0

働いてありがとう! – TheBandit