因此,我的作业问题是“获取首字母为”B.W.“的人撤回的所有书籍的列表。显示名、姓、首字母和书名的列”。我试图连接这三个表,因为这是获得此信息的唯一方法,但我很难只显示首字母为“B.W.”的姓名。我得到一个语法错误,说:
“您的SQL语法中有错误;请查看与MySQL服务器版本对应的手册,以了解在“JOIN withdrawals”附近使用的正确语法
当我删除'WHERE'语句(第二行的所有语句)时,语法错误就消失了。如何使其正常工作?
下面是我的代码:
SELECT first_name, last_name, title FROM members
WHERE first_name LIKE 'B%' AND last_name LIKE 'W%'
JOIN withdrawals
ON members.member_id = withdrawals.member_id
JOIN books
ON withdrawals.book_id = books.book_id
5条答案
按热度按时间oxalkeyp1#
JOIN应该始终放在FROM table-name之后。
ON成员.成员标识=提款.成员标识JOIN帐簿ON withdrawals.book_id = books.book_id WHERE名字类似于'B%' AND姓氏类似于'W %'*
ih99xse12#
在编写SQL语句时,必须遵循一个流程
ny6fqffe3#
首先,您需要创建一个名为“姓名缩写”的列。在这种情况下,您可以使用SUBSTR来获取您的first_name的第一个字母和last_name的第一个字母。然后,您需要将它们连接在一起,使其成为一个列。
然后,你需要找出谁的首字母是B.W.。你可以使用LIKE('B.W. ')。因为你有一个具体的答案,所以你不需要使用%。
tgabmvqs4#
试着按顺序执行所有操作,例如:
igetnqfo5#
您可以尝试以下操作: