私はすべてのユーザー情報と製品情報を持つ別のテーブルを持つテーブルを持っています。他のテーブルに複数のフィールドを1つテーブル
各製品には、複数のユーザーへの参照があります。 例:user1はproducer、user2はproductSupervisor、user3はproductManagerです。
がどのように私はこのような情報を得ることができます。 product1.producerはUser1.Nameあるuser2.Nameとproduct.managerがuser3.Name
プロデューサーである、product1.supervisorは、productSupervisorとプロダクトマネージャーは、ユーザIDとして保存されています。
あなたは一度役割ごとに、三度employee
テーブルの上にproduct
テーブルに参加できステートメント
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 user1にユーザを参加させて残しました はproduct.user2_id = users.user_id user2に参加しました。 はproduct.user3_id = users.user_id user3に参加しましたuser3 product_id =? ' –
または何か - @ryanVincentによれば、クエリが実際にどのように見えるかを知っていれば助けがはるかに簡単です:) –
まだデータを挿入していません....構造体の周りを頭で覆いたいと思っています...構造体を変更する必要があるかどうかを知るためです。しかし、私は質問を意味を持たせる方法を見つけることができません。 – pmoreira