select o.order_num,o.start_time,o.total,bk.book_name,bk.book_price,od.num,od.total from order o inner join order_detail od on o.order_id=od.order_id where o.user_id=1008611 inner join book bk on od.book_id=bk.book_id;
时间: 2024-03-12 13:47:55 浏览: 95
Mysql inner join on的用法实例(必看)
根据你提供的 SQL 语句,出现错误的原因是 `WHERE` 和 `INNER JOIN` 关键字的位置不正确。在多表查询时,应该先使用 `FROM` 关键字指定要查询的数据表,然后使用 `INNER JOIN` 关键字连接其他表,最后使用 `WHERE` 关键字指定查询条件。下面是修改后的 SQL 语句:
```
SELECT o.order_num, o.start_time, o.total, bk.book_name, bk.book_price, od.num, od.total
FROM `order` o
INNER JOIN order_detail od ON o.order_id = od.order_id
INNER JOIN book bk ON od.book_id = bk.book_id
WHERE o.user_id = 1008611;
```
注意,`order` 是 MySQL 中的保留关键字,因此需要使用反引号将其括起来以避免语法错误。同时,建议使用表的别名以简化 SQL 语句的编写。
阅读全文