Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.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_Sql - Fatal编程技术网

mysql中显示为空的两列记录

mysql中显示为空的两列记录,mysql,sql,Mysql,Sql,我把两张桌子、一本书和两个座位连在一起。但mysql客户中的两列记录显示为null,移动列显示为null 母线簿表: 座位表: 选择 seats.busno,seats.seats,seats.status, busbook.customer,busbook.mobile,seats.date 从…起 座位 左连接 座椅上的总线簿。总线号=总线簿。总线号和座椅。id=总线簿。座椅 返回的结果如下所示: busno seats status customer mobile date

我把两张桌子、一本书和两个座位连在一起。但mysql客户中的两列记录显示为null,移动列显示为null

母线簿表:

座位表:

选择 seats.busno,seats.seats,seats.status, busbook.customer,busbook.mobile,seats.date 从…起 座位 左连接 座椅上的总线簿。总线号=总线簿。总线号和座椅。id=总线簿。座椅 返回的结果如下所示:

 busno  seats  status   customer  mobile   date
 -----------------------------------------------------
 91000    1    Booked   NULL      NULL     2019-12-06
 91000    2    Booked   NULL      NULL     2019-12-06
 91000    3    Booked   NULL      NULL     2019-12-06
 91000    4    Booked   NULL      NULL     2019-12-06

我认为你应该这样修改你的加入条件

AND seats.seats = busbook.seat

ON条款中的条件:

...AND seats.id = busbook.seat
这可能是错误的。 也许你需要:

...AND seats.seats = busbook.seat
您的问题中的要求不是很清楚,您的问题有被否决的风险

但是为了解决你的问题。这是您最可能需要的查询

您已经使用了LEFT JOIN关键字

但是LEFT JOIN关键字返回左表table1中的所有记录,以及右表table2中的匹配记录。如果没有匹配项,则结果从右侧为NULL

您要使用的是internaljoin关键字选择两个表中具有匹配值的记录


此外,您的查询在连接条件中有多个错误。我已经纠正了,希望这能解决你的问题

AND seats.seats=busbook.seat而不是AND seats.id=busbook.seat

您的问题是什么?我需要向列显示客户、移动数据这是否回答了您的问题?如果座椅和座椅应存储相同类型的数据,则它们应具有相同的名称。是座位号,还是座位数?@alberto感谢您将答案格式化,但是您没有更改答案的实际内容。我没有更改上下文,因为您所写的内容是正确的。我已经提高了代码的可读性,因此也提高了响应的可读性。如果您认为我所写的是正确的,我们将非常感谢您的支持。谢谢
...AND seats.id = busbook.seat
...AND seats.seats = busbook.seat
SELECT s.busno, s.seats, s.status, 
       b.customer, b.mobile, s.date 
FROM seats s
INNER JOIN busbook b ON s.busno=b.busno AND s.seats = b.seats