从db获取数据Mysql PHP

从db获取数据Mysql PHP

问题描述:

好吧,我现在介绍这个问题,我有3个表CompanyCompanyName, Project。在Company我有很多公司ID和项目ID,在CompanyName所有公司的名称,在Project有所有项目的名称。从db获取数据Mysql PHP

如果你不明白,我会给例如,

  • Company:1,3; 5,7; 。 。 。
  • CompanyName:1,FirstName; 2 Secondname; 3第三名; 。 。 。
  • Project:1,First project; 2,SecondProject; 。 。 。

结果必然是:公司名称 - 项目名称

  • 名字 - 第三个项目
  • FifthName - 第七项目

但我不知道热,以获得从数据库数据像在这个例子中一样Company name - Project name

我从来没有用3个表进行SQL查询。

我的坏,你不明白的问题;(

参见:

  • Company有2行(3,但我们只需要2):CompanyIDProjectId
  • CompanyName有2行:IdName
  • Project有2行IdName

Company只例如CompanyID=3数字和

,我不知道,当我有CompanyID=3和从CompanyNameProject和答案得到的数据必须是THEcompany3 = TheProject100

+2

你可以做两个表的查询吗?或者根本不知道JOIN的语法? – andrewsi 2012-07-11 17:23:14

+0

我不能做,但我不知道好的算法,用数据做什么选择所有3行或别的东西;( – Wizard 2012-07-11 17:25:06

我觉得这样的事情可能工作:

SELECT 
    companyName, projectName, companyID 
FROM 
    company c 
INNER JOIN 
    companyName cn ON c.companyID=cn.companyID 
INNER JOIN 
    project p ON c.companyID=p.companyID 

Editted与新的查询

SELECT 
    cn.name, p.name 
FROM 
    company c 
INNER JOIN 
    companyName cn ON c.companyID=companyName.ID 
INNER JOIN 
    project p ON c.companyID=project.ID 

是你以后在做什么?

+0

companyName,projectName现在是行,这是3表companyName,projectName,company。 – Wizard 2012-07-11 17:56:16

+0

我已将companyID添加到SELECT语句中 - 是您的意思? – andrewsi 2012-07-11 17:58:08

+0

请看看我的第一篇文章,我编辑它,也许现在它会更容易理解;) – Wizard 2012-07-11 18:53:37

Select cn.companyname, p.projectname 
FROM company c, projects p, companyname cn 
WHERE c.id = p.id AND c.id = cn.id 
+0

请看看我的第一篇文章,我编辑它:) – Wizard 2012-07-11 18:56:17