我试图从我的数据库中的多个表中选择信息,这些信息显示了多本图书和订单的详细信息。
我正在查询isbn到某本书的5个表(作者,书籍作者,书籍,订单行和书籍订单),以检索有关该书的信息以及为该书订购的订单信息。
SELECT orderline.isbn, title, ordernumber, orderdate, customername, numcopies, orderline.bookprice, authorname
FROM author natural join bookauthor natural join book join orderline natural join bookorder
WHERE orderline.isbn = book.isbn
and book.isbn = "1491936169"
ISBN: 1491936169 Title: Kafka: The Definitive Guide: Real-Time Data and Stream Processing at Scale
Author: Neha Narkhede, Todd Palino, Gwen Shapira
Order Number Date Customer Copies Price Total
N201699998 2016-12-24 Mary Hall 2 33.99 67.98
N201799999 2017-01-03 Aran Clauson 1 33.99 33.99
Total:
然而,有些isbns尚未订购,因此不在订单表中,但在书表中,显示所有书籍的isbn。
我想显示那些没有订单的书籍的书籍信息,例如:
ISBN: 0387848576 Title: The Elements of Statistical Learning
Author: Jerome Friedman, Trevor Hastie, Robert Tibshirani
No orders
基本上我想要一个表,显示isbn和null值的书信息,其中没有订单。我想这会是某种自然的外部联接,但是我的尝试导致了空表。
尝试使用分组
删除重复项的更新查询SELECT ordernumber, orderdate, customername, orderline.isbn, title, orderline.numcopies, stock, shipmentbook.numcopies as shipcopies, authorname
FROM author natural join bookauthor natural join book left join bookorder natural join orderline
ON book.isbn = orderline.isbn
left join mousavs.shipmentbook
ON book.isbn = shipmentbook.isbn
WHERE stock > orderline.numcopies
GROUP BY ordernumber
ORDER BY orderdate, ordernumber, ISBN
错误代码:1055.SELECT列表的表达式#4不在GROUP BY子句中,并且包含非聚合列' mousavs.orderline.isbn'它在功能上不依赖于GROUP BY子句中的列
答案 0 :(得分:1)
左连接101 ......你真的......如果你打算在RDMS工作,你真的需要阅读联接。
<input v-model="inputVal" ... />