MySQL查询,我的加入有问题吗?

MySQL查询,我的加入有问题吗?,mysql,Mysql,我不确定问题是否存在,但请看一看: 我有三张桌子: 类别:id、图标、名称 子类别:id、名称、说明、类别\u id 主题:id、标题、文本、作者、已创建、子类别\u id 现在我正在尝试获取此信息(查询): 结果: 从5到5的类别显示5-OK, 4中的子类别在第一个类别中仅显示1 也许查询太长了?谢谢你的回答。 LEFT JOIN subcategories ON subcategories.category_id = 1 应该是这个吗 LEFT JOIN subcategori

我不确定问题是否存在,但请看一看:

我有三张桌子:

  • 类别:id、图标、名称
  • 子类别:id、名称、说明、类别\u id
  • 主题:id、标题、文本、作者、已创建、子类别\u id 现在我正在尝试获取此信息(查询):

    结果:

    从5到5的类别显示5-OK, 4中的子类别在第一个类别中仅显示1

    也许查询太长了?谢谢你的回答。

    LEFT JOIN
      subcategories
    ON
      subcategories.category_id = 1
    
    应该是这个吗

    LEFT JOIN
      subcategories
    ON
      subcategories.category_id = categories.id
    

    在第一次联接中,您已写入:subcategories.category\u id=1。。。据我所知,这将只加入类别1的所有子类别…是的,得到相同的结果。类别中只有1个子类别。$string\u result=mysql\u query($string\u query)或die(mysql\u error());虽然($string\u row=mysql\u fetch\u array($string\u result)){这里可能错了吗?看起来很好(除了结果和行都不是字符串,所以如果你想把类型放在名称中,它是错误的。虽然与功能没有任何关系),也许可以先试试简单一点-如果你忽略主题的第二个连接会发生什么?
    LEFT JOIN
      subcategories
    ON
      subcategories.category_id = categories.id