我现在已经尝试了 1 小时,试图找出如何使用简单的 SQL 语法在 INNER JOIN 中从数据库中提取内容。
几乎可以正常工作,我的问题是如何从表格中选择不止一行。
我的 SQL 语法:
SELECT topics.topic_id, topics.topic_subject, COUNT(posts.post_topic) AS comments
FROM topics
INNER JOIN posts ON topics.topic_id = posts.post_topic = topics.topic_id
LIMIT 10
当然,我不想使用 WHERE 语句,而且没有 WHERE 语句也不起作用。顺便提一句。我认为ON之后是错误的,但我不太确定。
谢谢!
最佳答案
尝试:
SELECT topics.topic_id, topics.topic_subject, COUNT(posts.post_topic) AS comments
FROM topics
JOIN posts ON topics.topic_id = posts.post_topic
GROUP BY topics.topic_id, topics.topic_subject
LIMIT 10
COUNT 是一个汇总函数,但您并没有告诉数据库如何汇总(即汇总)数据。 GROUP BY 子句声明数据应根据 topic_id 和 topic_subject 汇总。
如果您只选择 topic_id 为 NULL 的行,您希望得到什么? (我假设它是主键。)我希望什么也得不到,除非帖子表中有一些孤立的帖子。
关于php - 多行的 SQL 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3126332/