doushang9172 2012-04-09 06:44
浏览 31
已采纳

使用PHP MYSQL将带有递归my book_category的book_list加入SQL

I have two tables names book_list and book_category. Schema is like below:

book_list

+---------+--------+-----------+  
| id_book | id_cat | book_name |     
+---------+--------+-----------+     
|   1     |    3   | Book Nam1 |
|   2     |    1   | Book Nam2 |
|   3     |    2   | Book Nam3 |
+---------+--------+-----------+

book_category

+--------+----------+-----------+-------+
| id_cat | cat_name | id_parent | level |
+--------+----------+-----------+-------+
|   1    |   name1  |     0     |   1   | 
|   2    |  name1.1 |     1     |   2   |
|   3    |name1.1.1 |     2     |   3   |
+--------+----------+-----------+-------+

code tried:

SELECT a.id_book, a.id_cat, a.book_name, b.cat_name, b.level 
FROM book_list a
INNER JOIN book_category b  ON  a.id_cat = b.id_cat

I need to manipulate the result array to add breadcrumb where each has link to itselfs like:

table row:
<td>3(id_book)</td>
<td>Book Nam3 (book_name)</td>
<td>
  <a href="handle.php?id=<?=id_cat;?>">Name 1</a> » 
  <a href="handle.php?id=<?=id_cat;?>">Name 1.1</a> »
  <a href="handle.php?id=<?=id_cat;?>">Name 1.1.1</a>
</td>

Hope I made my point and thank you for any help.

  • 写回答

2条回答 默认 最新

  • dosgy00204 2012-04-09 07:11
    关注

    Try this query.

    SELECT
      bl.id_book, bl.id_cat, bl.book_name, tc2.cat_name, tc2.level
    FROM
      book_list bl
    JOIN book_category tc
      ON tc.id_cat = bl.id_cat
    JOIN book_category tc2
      ON LOCATE(tc2.cat_name, tc.cat_name) > 0
    WHERE
      tc.id_cat = 3
    

    This query is based on occurrence of cat_name substrings.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)