Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 查询时遇到问题_Mysql - Fatal编程技术网

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