且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

mysql查询从给定的表结构创建SEO友好的url

更新时间:2023-11-07 23:07:28

这里是我自己的问题的答案: / p>

我尝试使用 MySql Modified preorder tree to create url 我发现通过***在查询优化和其他研究方面更有用。


I am trying to create SEO friendly URLs using the below tables:

Category table

Pages table

I am trying to write a mysql query that will generate URLs for all the pages in the pages table using the category table producing the below output.

Expected Ouput:

Here is the MySql query that I tried for generating URLs upto 4 segments:

SELECT pg.id AS page_id, p3.id, p1.category AS segment1, p2.category AS segment2, p3.category AS segment3, 
pg.page_name AS PAGE , concat( '/', p1.category, '/', p2.category, '/', p3.category, '/', pg.page_name, '/' ) AS url
FROM category AS p1, category AS p2, category AS p3, pages AS pg
WHERE pg.category_id = p3.id
AND p3.parent_id = p2.id
AND p2.parent_id = p1.id

Link to SQL Fiddle

Here is the answer to my own question:

I tried using the "MySql Modified preorder tree to create url" method which I find more useful in terms of query optimization and other research through ***.