所以我正在尝试学习一些MySQL,并且我已经了解了连接。它让我头疼。
我有一些练习正在尝试完成,但一无所获。
当前的练习要求这样做:
使用 1994 年之前的 SQL 语法(即不要使用 INNER JOIN 语法)来显示订单日期、订单号和发货人公司名称 葡萄牙。按订单日期的升序对输出进行排序。
我目前已经输入了以下内容:
SELECT OrderDate, OrderID, ShipperID FROM Shippers Orders
WHERE shippers.shipperID = orders.shipperID AND orders.shipcountry = 'Portugal';
但我收到此错误消息: 错误代码:1054。“字段列表”中存在未知列“OrderDate”
我做错了什么?另外,我能提供什么来帮助你们帮助我吗?
OrderDate 确实存在,正如您从我的“从订单中选择 *”的屏幕截图中看到的那样
所以我认为这是相似的,但加入过程不同。
提前谢谢您!
最佳答案
必须使用表名和列名来标识哪一列属于哪一个表。
SELECT orders.OrderDate, orders.OrderID,shippers.ShipperID FROM Shippers, Orders
WHERE shippers.shipperID = orders.shipperID AND orders.shipcountry = 'Portugal';
或者您可以使用别名,这样可以轻松编写查询。
SELECT b.OrderDate, b.OrderID, a.ShipperID FROM Shippers a, Orders b
WHERE a.shipperID = b.shipperID AND b.shipcountry = 'Portugal';
希望这会有所帮助。
关于mysql - 我根本不理解 MySQL 连接。我被困住了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40417598/