I am blogging by myself recently. The article function. The user clicks on the article ID to enter the detailed article content display page and the user comment content corresponding to the current article. Here are my thoughts. I don't know if there are any shortcomings. I hope all the experts can give me some advice. Thank you
1. Article table
2. User table (no pictures if there is no problem)
3. User comment table
4.thinkphp gets a single article and displays the comment content code
5. Front-end display
Question 1: When getting a single article. Check whether the comment content corresponding to the current article is in a sql statement, and then perform paging of the comment content.
Question 2: No. 3 above. When a user comments on an article multiple times. The data I queried here are all repeated. Because I query based on the article ID.
In summary: Is there a problem with my table design? Is there any problem with the sql query?
Thank you for your advice
I am blogging by myself recently. The article function. The user clicks on the article ID to enter the detailed article content display page and the user comment content corresponding to the current article. Here are my thoughts. I don't know if there are any shortcomings. I hope all the experts can give me some advice. Thank you
1. Article table
2. User table (no pictures if there is no problem)
3. User comment table
4.thinkphp gets a single article and displays the comment content code
5. Front-end display
Question 1: When getting a single article. Check whether the comment content corresponding to the current article is in a sql statement, and then perform paging of the comment content.
Question 2: No. 3 above. When a user comments on an article multiple times. The data I queried here are all repeated. Because I query based on the article ID.
In summary: Is there a problem with my table design? Is there any problem with the sql query?
Thank you for your advice
The table design is fine. SQL error
According to the way you write it, it is wrong, because the comments are 1 to many, all comments must be displayed, and the table with many must be left connected as the main table.
But although you can write like this, it is not recommended, because you can simply search the article, and the comments are checked based on the ID. There is no need to go to the left link. The time for the two searches is faster than the time you mentioned above, so there is no need. Then write.
SQL statement: 1. Check the article content 2: Check the comments, limit 1,10, and then the comment table left link user table, conditional article id
Check the article content and comment list separately. The more functions a SQL statement has, the more troublesome it will be to change it in the future.