我有3个表格,但现在我只担心其中2个。我想选择两个表中的所有条目。我相信这是JOIN声明的目的。我的表格是“公司”和“个人信息”。公司是以CompanyName为主键的个人表,个人信息表的外键索引为Company_id。声明是什么将这两者作为一个单一的查询加入?使用JOIN选择多个表格
回答
我不是100%肯定你的方案,但是这是你在找什么的最简单形式:
SELECT *
FROM Companies C
INNER JOIN PersonalInfo PI ON C.Company_id = PI.Company_id
内部连接的性质将排除没有任何相关PersonalInfo行的公司中的行。如果你想获得的所有公司,无论那么你会使用LEFT OUTER JOIN:
SELECT *
FROM Companies C
LEFT OUTER JOIN PersonalInfo PI ON C.Company_id = PI.Company_id
当您选择*在加入它将从两个表返回所有行。您可以选择要显示的列,方法是在选择中指定它们:
SELECT C.CompanyName, PI.ColName1, PI.ColName2
FROM Companies C
LEFT OUTER JOIN PersonalInfo PI ON C.Company_id = PI.Company_id
这个工作,但它显示公司名称两次是否有办法摆脱公司名称? – Yamaha32088
我更新了我的答案,希望这能让你更接近你的期望。 – sean
是的,你的男人 – Yamaha32088
如果我明白你的问题,这是你可能需要的东西:
$stmt3 = $DB->prepare('select c.field1,c.fieldn,p.fielda,p.fieldx from companies c inner join personal_info p on c.id=p.companies_id');
- 1. mysql使用INNER JOIN选择多个表?
- 2. JOIN的VS选择从多个表中
- 3. jqGrid从JOIN的多个选择列表
- 4. 在选择多个表时使用INNER JOIN与MySQL?
- 5. MySQL:选择多个表格
- 6. Mysql JOIN多个表并选择多个值
- 7. 从多个表中选择字段并在一个表上使用OUTER JOIN
- 8. 单选择组合多个JOIN
- 9. 选择查询使用jquery单选按钮的多个表格
- 10. 如何使用JOIN从另一个表中选择一个值
- 11. 使用Javascript从多个选择选择列表中选择值
- 12. MySQL INNER JOIN 3个表格,也使用INNER JOIN DELETE使用
- 13. 从表格中选择一个表格中的多个列表
- 14. 在3个表格中选择count(*)和“join”
- 15. 选择从多个多计数JOIN具有多个Group_BYs
- 16. 使用SQL JOIN比较两个表格
- 17. 使用多个选择或JOIN ON在列表中添加列响应
- 18. Mysql - 使用INNER JOIN错误从2个表中选择列
- 19. 递归使用JOIN从两个表中选择
- 20. 从多个表格中选择
- 21. 插入多个表格选择到Mysql
- 22. 选择多个表格。 WordPress的
- 23. 为JDBC项目选择多个表格
- 24. sql选择透视多个表格
- 25. 如何从具有多个约束的INNER JOIN表中选择?
- 26. 在SQL SERVER中JOIN多个表格
- 27. 使用HQL从多个表中选择
- 28. 使用DataServiceQuery选择多个表
- 29. 如何使用mysql选择多个表?
- 30. 使用多个下拉列表从多个选择中选择首选项
您当前的查询是什么?在寻求帮助之前至少尝试一些东西通常是有益的。 – enderland
$ stmt3 = $ DB-> prepare('SELECT * FROM companies LEFT JOIN personalInfo USING(CompanyName)'); – Yamaha32088