1

予想よりも多くの行を返す SQL サーバー クエリがあります。

select 
   b.isbn, l.lend_no, s.first_name
from 
   dbo.books b, dbo.lending l, dbo.students s 
where 
   (l.act between '4/16/2013' and '4/16/2013') 
   and (l.stat ='close')`

私がしたいのはisbn、その本の返却日が指定された日付の間にあり、貸し出しステータスがクローズされていることです。貸し出しテーブルには、指定された日付に返された貸し出しが2つしかありませんが、クエリで304行が返されlend_noますstudent name

4

3 に答える 3

0

あなたのFROM句は、期待どおりに機能していません。そのようにテーブルを指定することにより、デカルト積を与える完全な結合を行います。適切なテーブル結合構文を使用する必要があります。

これは、テーブル結合の優れた説明です: http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html

于 2013-04-17T08:06:33.377 に答える