Php 从同一内部添加sql将同一表中的多个选项连接起来

Php 从同一内部添加sql将同一表中的多个选项连接起来,php,mysql,sql,sql-server,Php,Mysql,Sql,Sql Server,基本上,我只想选择和内部联接2个表,但在第二个内部联接上,我想添加属性,在检查它们是否联接时,我想向该联接添加3个值。基本上内部连接同一个表两次代码如下: SELECT * FROM categories INNER JOIN user_cat ON user_cat.cat_one = categories.category AND user_cat.cat_two = categories.category AND user_cat.cat_three = categori

基本上,我只想选择和内部联接2个表,但在第二个内部联接上,我想添加属性,在检查它们是否联接时,我想向该联接添加3个值。基本上内部连接同一个表两次代码如下:

SELECT * FROM categories 
INNER JOIN user_cat ON user_cat.cat_one = categories.category 
   AND user_cat.cat_two = categories.category 
   AND user_cat.cat_three = categories.category
SELECT * FROM categories, user_cat 
WHERE user_cat.cat_one = categories.category 
   AND user_cat.cat_two = categories.category 
   AND user_cat.cat_three = categories.category
基本上,上面的代码不起作用。当我尝试选择这两个表并检查代码是否可以工作时,这两个表都不能工作。代码如下:

SELECT * FROM categories 
INNER JOIN user_cat ON user_cat.cat_one = categories.category 
   AND user_cat.cat_two = categories.category 
   AND user_cat.cat_three = categories.category
SELECT * FROM categories, user_cat 
WHERE user_cat.cat_one = categories.category 
   AND user_cat.cat_two = categories.category 
   AND user_cat.cat_three = categories.category

如何更改我的选择以允许检查所有树列?

我认为您正在尝试执行以下操作

SELECT * 
FROM user_cat UC
LEFT JOIN  categories C1 ON UC.cat_one   = C1.category
LEFT JOIN  categories C2 ON UC.cat_two   = C2.category 
LEFT JOIN  categories C3 ON UC.cat_three = C3.category

你能发布你的示例数据吗?学生游戏玩家演艺人员join的
ON
子句是逐行的,因此它不能等于所有3个值。也许你的意思是
?请编辑上面的问题,发布这两个表中实际行的示例,以及您希望查询生成的输出行集的示例。不,从user_cat,但从categories…尝试了一个,但什么都没有。。。。