我只能假设这已经被问,我一直在寻找这里等了一个小时,可能看起来正确的它,不知道这是我的答案。请原谅我,如果是这样的话,可能我指向正确的答案也许?
我有字符在此表主表,主ID。另外两个表由char_id引用。我想拉从所有三个表匹配字符表中的ID号中的所有列。
Characters
id, col1, col2, col3
equip_profiles
id, char_id, col1, col2, col3
inventory
id, char_id, col1, col2, col3
需要的回
characters.id, characters.col1, characters.col2, characters.col3, equip_profiles.col1, equip_profiles.col2, equip_profiles.col3, inventory.col1,
inventory.col2, inventory.col3,
我当然得所有表中的几个列,只是试图让一切从使用characters.id是根ID和char_id为指针回字符的所有三个表。
请帮忙!
SELECT characters.*, equip_profiles.*, inventory.*
FROM characters
JOIN equip_profiles ON characters.id = equip_profiles.char_id
JOIN inventory ON characters.id = inventory.char_id
你的表名Characters
但在查询你使用它作为characters
。这可能是这个问题,我也建议别名的使用情况表如下:
SELECT a.*, b.*, c.*
FROM characters a
FULL OUTER JOIN equip_profiles b ON a.id = b.char_id
FULL OUTER JOIN inventory c ON a.id = c.char_id
编辑:FULL OUTER JOIN关键字返回的所有记录,当存在或左(表1)匹配或匹配条件的权利(表2)表中的记录。
这里所有三个表包含相同的列名,如果,你必须与像其他名称指定其他两个表ID
equip_profiles.id为eqid
inventory.id相邻
或者你说你想要什么,你可以指定你的选择查询
查询可能会像
SELECT characters.*, equip_profiles.id as eqid,equip_profiles.col1, inventory.id as invid,inventory.col1
FROM characters
JOIN equip_profiles ON characters.id = equip_profiles.char_id
JOIN inventory ON characters.id = inventory.char_id,