반응형
하나의 테이블에서 다른 테이블로 여러 필드
그래서 저는 모든 사용자 정보가 있는 테이블과 제품 정보가 있는 테이블이 있습니다.
각 제품에는 여러 사용자에 대한 참조가 있습니다. 예: user1은 생산자, user2는 productSupervisor, user3은 productManager입니다.
product1.producer는 User1입니다. 이와 같은 정보를 얻으려면 어떻게 해야 합니까?이름, 제품1.supervisor는 user2 입니다.이름과 제품.manager는 user3 입니다.이름.
생산자, 제품감독자 및 제품관리자는 사용자로 저장됩니다.신분증.
문 만들기
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
테이블 위의employee
각 역할에 대해 한 번씩 테이블 세 번:
SELECT idProduct,
CONCAT_WS(' ', s.firstname, s.lastname) AS supervisor,
CONCAT_WS(' ', p.firstname, p.lastname) AS producer,
CONCAT_WS(' ', m.firstname, m.lastname) AS manager
FROM product pr
JOIN employee s ON pr.idSupervisor = s.idEmployee
JOIN employee p ON pr.idSupervisor = p.idEmployee
JOIN employee m ON pr.idSupervisor = m.idEmployee
언급URL : https://stackoverflow.com/questions/42867962/one-table-multiple-fields-to-other-table
반응형
'programing' 카테고리의 다른 글
JSON_TABLE을 사용하여 Oracle JSON 열에서 Key Value를 결과 집합으로 가져오는 방법 (0) | 2023.10.14 |
---|---|
python에서 사용자 지정 메시지로 오류를 던지고 종료하는 방법 (0) | 2023.10.14 |
갤러리에서 안드로이드 이미지 선택 (0) | 2023.10.14 |
ng-if가 참인 경우에만 메서드 호출 (0) | 2023.10.14 |
C에서 포인터 비교는 어떻게 이루어집니까?같은 배열을 가리키지 않는 포인터를 비교해도 괜찮습니까? (0) | 2023.10.14 |