所以我有一个表与所有用户信息和另一个表与产品信息。一表多个字段到其他表
在每个产品上都有对多个用户的引用。 例如:user1是生产者,user2是productSupervisor,user3是productManager。
我怎样才能得到的信息是这样的: product1.producer是User1.Name,product1.supervisor是user2.Name和product.manager是user3.Name
生产,productSupervisor和productManager存储为用户ID。
创建报表
CREATE TABLE employee (
idEmployee int(11) NOT NULL AUTO_INCREMENT,
networkID varchar(45) NOT NULL,
firstName varchar(100) NOT NULL,
lastName varchar(100) NOT NULL,
phoneExtension varchar(10) DEFAULT NULL,
email varchar(50) NOT NULL,
mobile varchar(20) DEFAULT NULL,
onCall tinyint(4) NOT NULL DEFAULT '0',
lastLogin varchar(100) DEFAULT 'Never',
active tinyint(4) NOT NULL DEFAULT '1',
createDate timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (idEmployee),
KEY idx_employee (idTeam),
KEY idx_employee_0 (idPosition),
CONSTRAINT fk_employee_employeepositions FOREIGN KEY (idPosition) REFERENCES employeePositions (idPosition) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT fk_employee_teams FOREIGN KEY (idTeam) REFERENCES teams (idTeam) ON UPDATE NO ACTION
)
CREATE TABLE product (
idProduct int(11) NOT NULL,
idSupervisor int(11) NOT NULL DEFAULT '1',
idProducer int(11) NOT NULL DEFAULT '1',
idManager int(11) NOT NULL DEFAULT '1',
prodcutInfo longtext,
PRIMARY KEY idProduct
)
'选择的product_id,user1.name,user2.name,用户3。名称 左加入用户在product.user1_id = users.user_id用户1 左加入用户在product.user2_id = users.user_id用户2 左加入用户在product.user3_id = users.user_id用户3 其中product_id =?' –
或者 - 如@ryanVincent所说,如果我们知道查询实际应该是什么样子,它会容易得多:) –
我还没有插入任何数据....我我仍然试图将我的头围绕在结构上......以了解是否需要改变结构。但我找不到一种方法让查询变得有意义。 – pmoreira