SQL의 기본 키에 대한 빠른 질문이 있습니다. 하나의 테이블 (Patient)에 기본 키가 있고 다른 기본 키가있는 다른 테이블 (Facility)이 있습니다. 내가하고 싶은 일은 환자의 기본 키를 가지고 시설 테이블에 정확한 기본 키 (데이터 포함)를 갖도록 연결하는 것입니다. 어떻게해야합니까? 사전에 도움을 주셔서 감사합니다, 그것은 대단히 감사합니다!동일하지만 두 개의 다른 테이블에있는 두 개의 기본 키
답변
이것은 흥미로운 종류의 관계입니다. 하지만 당신은 두 테이블에 동일한 ID를 삽입을 수행 할 수 있습니다
INSERT INTO Parient(ID, NAME) VALUES (5, 'Mike');
INSERT INTO Facility(ID, LOCATION) VALUES (5, 'San Francisco');
당신은 ALOS 첫 삽입의 순서를 사용할 수있는 다음 두 번째 삽입 (현재 값)에 대해 생성 새로운 ID를 사용합니다.
참고 :이 ID 동기화 방법은 권장하지 않습니다. 더 나은 방법은 데이터베이스가 자동 증분 시퀀스를 사용하여 데이터베이스에 고유 ID를 할당 한 다음 외래 키 제약 조건을 Patient 테이블에 FACILITY_ID
을 추가하거나 일대일 관계를 구현하는 Facility 테이블에 PATIENT_ID
을 정의하는 것입니다.
create table hospitalization (
patient_id int not null,
facility_id int not null,
date_start date not null,
date_end date
);
이 표준은 특성을 가진 많은 관계로 많은이며, 환자가 여러 번 병원에 입원 할 수 있으며, 각 시설이 많이있을 수 있음을 의미합니다 :
내가하려고하는 것은 Patient 테이블에 PatientID 420이 있고, 필자의 Facility 테이블에서 PatientID 420이 정확히 같을 수 있기를 원합니다. 그래서 기본적으로 환자 (환자 테이블)를 위치 (시설 테이블)에 지정하려고합니다. – user3474069
다음과 같이 데이터를 선택할 때 할 수 있습니다 :'SELECT p.name, f.location parient p, facility f WHERE p.id = f.id'. –
예.하지만 시설 테이블의 기본 키가 FacilityID인데 환자 테이블처럼 시설 테이블에 PatientID (환자 테이블의 기본 키)가 없습니다. – user3474069
하는 것은 다른 테이블 두 키를 포함 (예를 들어 입원를) 추가 환자.
- 1. 두 개의 다른 테이블에있는 두 개의 다른 기본 키에서 외래 키 참조가 유효합니까?
- 2. 두 개의 기본 키
- 3. 가로로 정렬 다른 테이블에있는 두 개의 테이블
- 4. 테이블에있는 두 개의 다른 행 (급여) 합계
- 5. 데이터베이스에 액세스 두 개의 기본 키
- 6. 하나의 외래 키와 두 개의 기본 키
- 7. 다른 테이블의 외래 키와 다른 테이블의 두 개의 기본 키
- 8. 두 개의 옵션 키
- 9. 두 개의 기본 키가있는 다른 테이블에서 업데이트
- 10. 두 개의 기본 키 및 자동 증가
- 11. 두 개의 정수로 기본 키 설정
- 12. 두 개의 다른 테이블에있는 두 개의 다른 필드를 기반으로 한 액세스에서 조건부로 필드를 채우는 방법은 무엇입니까?
- 13. 바이너리 동일하지만 아직 다른 행동을 보이는 두 개의 파일
- 14. 기본 키 충돌로 MySQL의 두 개의 다른 행에있는 두 개의 열을 바꾼다
- 15. 같은 테이블에있는 두 개의 열을 어떻게 비교합니까?
- 16. 테이블에있는 두 개의 SQL 채우기 필드
- 17. 두 개의 키 값으로 매핑
- 18. 두 개의 다른 컬렉션을 두 개의 다른 ListPickers에 바인딩하는 방법
- 19. 두 개의 다른 MySql 쿼리에서 두 개의 다른 배열 병합
- 20. codeigniter 두 개의 다른 file_upload가 두 개의 다른 구성이 필요합니다.
- 21. 각각 다른 두 개의 열
- 22. Karabiner 두 개의 KeyCode를 다른 두 개의 KeyCodes에 매핑하는 방법
- 23. 다중 선택 목록 상자에 두 개의 다른 테이블에있는 데이터 채우기
- 24. 서로 다른 테이블에있는 두 개의 열에 대한 MYSQL SUM
- 25. 동일한 테이블에있는 두 개의 서로 다른 값을 기준으로 카운터를 가져옵니다.
- 26. 곱하기 두 개의 키 값
- 27. 내가 두 개의 외래 키
- 28. 나는 두 개의 파일이 키
- 29. 두 개의 키 예를 들어
- 30. NHibernate에 두 개의 자연 키
당신이 시도한 몇 가지 질문을 보여주십시오. – Rezoan
당신은 단지 JOIN이 필요한 것처럼 들립니다. 자세한 내용은 [이 기사] (http://blog.codinghorror.com/a-visual-explanation-of-sql-joins/)를 참조하십시오. –
변경 테이블 시설 외래 키 (PatientID) 참조 환자 (PatientID) – user3474069