Mysql 查询时遇到问题
我有两张桌子(书和借来的) 我想从表Mysql 查询时遇到问题,mysql,Mysql,我有两张桌子(书和借来的) 我想从表书籍中选择全部。 但首先,它将检查BookID是否存在于表借用的中,如果它确实存在且其状态=1,则不会从select*语句中包括它 我试过这个,但不起作用 select * from Books except select `BookdID` where `Status`=1 请帮帮我。这是我的桌子 书籍: | BookID | Title | Author | |:-----------|------------:|:-
书籍中选择全部。
但首先,它将检查BookID
是否存在于表借用的中,如果它确实存在且其状态
=1,则不会从select*语句中包括它
我试过这个,但不起作用
select * from Books
except
select `BookdID` where `Status`=1
请帮帮我。这是我的桌子
书籍:
| BookID | Title | Author |
|:-----------|------------:|:------------:|
| 1 | The Stars | William Evan |
| 2 | Science 3 | Vhong Navaro |
| 3 | Let It Burn | Jun Ryl |
| 4 | Sky Below | Jason Midfle |
| 5 | Wish It | Shan Uddle |
借用:
| BookID | BorrowerID | Status |
|:-----------|------------:|:------------:|
| 6 | 12 | 0 |
| 5 | 4 | 0 |
| 2 | 3 | 1 |
| 18 | 6 | 1 |
| 5 | 3 | 0 |
我的目标输出:
| BookID | Title | Author |
|:-----------|------------:|:------------:|
| 1 | The Stars | William Evan |
| 3 | Let It Burn | Jun Ryl |
| 4 | Sky Below | Jason Midfle |
| 5 | Wish It | Shan Uddle |
*(BookID 2 is is not shown because in the table `Borrowed`, BookID 2's `Status` = 1)*
看
看
看
参见它说on子句中的列“Status”不明确
,这是什么意思?这意味着两个表都有一个Status
列,DB不知道取哪个列。我更新了查询并将表名添加到状态
列。@kielou我建议您阅读juergen提供的页面,然后直接查看。只有了解事物的运作方式,你才能在将来独自解决类似的问题。事实上,您的问题之前已经被问过了,并且还包含了一个左连接
,因为在MySQL中不存在除外
。谢谢您,先生。我发现了这个问题,它起作用了。非常感谢。@Armfoot我在等待他的回答时正在阅读,我想我现在可以解决我现在遇到的其他问题了,多亏了juergen d.。它说on子句中的列“Status”不明确,这是什么意思?这意味着两个表都有一个Status
列,DB不知道取哪个列。我更新了查询并将表名添加到状态
列。@kielou我建议您阅读juergen提供的页面,然后直接查看。只有了解事物的运作方式,你才能在将来独自解决类似的问题。事实上,您的问题之前已经被问过了,并且还包含了一个左连接
,因为在MySQL中不存在除外
。谢谢您,先生。我发现了这个问题,它起作用了。非常感谢。@Armfoot我在等待他的回答时正在阅读,我想我现在可以解决我现在遇到的其他问题了,多亏了juergen d.。它说on子句中的列“Status”不明确,这是什么意思?这意味着两个表都有一个Status
列,DB不知道取哪个列。我更新了查询并将表名添加到状态
列。@kielou我建议您阅读juergen提供的页面,然后直接查看。只有了解事物的运作方式,你才能在将来独自解决类似的问题。事实上,您的问题之前已经被问过了,并且还包含了一个左连接
,因为在MySQL中不存在除外
。谢谢您,先生。我发现了这个问题,它起作用了。非常感谢。@Armfoot我在等待他的回答时正在阅读,我想我现在可以解决我现在遇到的其他问题了,多亏了juergen d.。它说on子句中的列“Status”不明确,这是什么意思?这意味着两个表都有一个Status
列,DB不知道取哪个列。我更新了查询并将表名添加到状态
列。@kielou我建议您阅读juergen提供的页面,然后直接查看。只有了解事物的运作方式,你才能在将来独自解决类似的问题。事实上,您的问题之前已经被问过了,并且还包含了一个左连接
,因为在MySQL中不存在除外
。谢谢您,先生。我发现了这个问题,它起作用了。非常感谢。@Armfoot我在等待他的回答时正在阅读,我想我现在可以解决我现在遇到的其他问题了,多亏了juergen d.。可能的重复可能的重复可能的重复
select b1.*
from Books b1
left join Borrowed b2 on b1.bookid = b2.bookid
and b2.`Status` = 1
where b2.bookid is null