问题:。对于从" Branch_C"借出的每本书。分支及其DueDate 是在2012年4月2日至13日,检索书名,借款人姓名和借款人 地址。
我的回答::
select TITTLE , NAME, ADDRESS
from BOOK B , BORROWER O, BOOK_LOANS L
where B.BOOKID= L.BOOKID and L.BRANCHID =
(select BRANCHID from LIBRARY_BRANCH where BRANCHNAME='Branch_C')
and (O.CRADNO=L.CRADNO) and L.DUE_DATE='2013-2-13'
我有这个错误
ORA-00918:列模糊定义
答案 0 :(得分:2)
你应该定义列属于哪个表
select B.TITTLE , O.NAME, L.ADDRESS
from BOOK B , BORROWER O, BOOK_LOANS L
where B.BOOKID= L.BOOKID and L.BRANCHID =
(select BRANCHID from LIBRARY_BRANCH where BRANCHNAME='Branch_C')
and (O.CRADNO=L.CRADNO) and L.DUE_DATE='2013-2-13'
答案 1 :(得分:0)
您在查询中使用的列在多个具有相同名称的表中定义。使用表名前缀字段。
select table_a.ambiguos_name, table_b.ambiguos_name
from table_a inner join table_b on table_a.id = table_b.id
答案 2 :(得分:-1)
“其截止日期为02年4月2日”
好吧,那么日期应该是这样的 L.DUE_DATE = '2013年4月2日'