spe*_*0ne 2 php mysql sql database
我正在编写一个帮助预订用户之间交流的应用程序.我正在使用PHP和MySQL,我对它们都很陌生.
我有5个表,3个数据表和2个服务表:
user:具有用户属性(user_id,name,birth ...等).
书:具有书籍属性(book_id,名称,作者,出版商......等).
copy:代表书籍的实际副本(copy_id,条件,评论......等).
user_copy:描述哪个用户拥有由userID和copyID组成的副本.
copy_book:表示copy和book的连接,由copyID和bookID组成
我的问题是:获取用户拥有的每个副本的书籍属性和副本属性的最简单,最有效的陈述是什么?
您需要内部连接您感兴趣的所有表:book,copy,user_copy和copy_book.返回用户持有的所有副本上的属性的SELECT语句可能如下所示:
SELECT B.bookID
, B.name
, B.author
, B.publisher
, C.condition
, C.comments
-- you may get other fields that you are interested in here..
FROM book B
INNER JOIN copy_book CB ON B.bookID = CB.bookID
INNER JOIN user_copy UC ON UC.copyID = CB.copyID
INNER JOIN copy C ON C.copyID = UC.copyID
WHERE UC.userID = <the user Id that you want>
Run Code Online (Sandbox Code Playgroud)
我希望陈述的内容非常清楚,但如果您有任何疑问,请询问.
| 归档时间: |
|
| 查看次数: |
619 次 |
| 最近记录: |