당신은 당신은 각 SELECT 필드의 수가 같아야 사용하여 조합
SELECT Date, Cars, Boats, Tags, Guns,
[Missing Persons], Null AS [Bench Warrants], Null AS Fingerprints FROM UnitA
UNION ALL
SELECT Date, Cars, Boats, Tags, Guns,
Null, [Bench Warrants], Null FROM UnitB
UNION ALL
SELECTG Date, Cars, Boats, Tags, Guns,
Null, Null, Fingerprints FROM UnitC
하여 단일 쿼리를 만들 수 있습니다. 첫 번째 SELECT의 필드 이름이 결과에 사용됩니다.
그러나 다른 DB 디자인을 제안합니다. 공통 테이블의 모든 commom 필드를 배치하고 왼쪽 조인과 함께 이제 쿼리를 만들 수있는 1 대 1의 관계
CREATE TABLE Unit (
UnitID CONSTRAINT PK_unit PRIMARY KEY,
Date datetime,
Cars long,
Boats long,
Tags long,
Guns long
)
CREATE TABLE UnitA (
UnitID CONSTRAINT PK_unitA PRIMARY KEY,
[Missing Persons] Long
)
ALTER TABLE UnitA
ADD CONSTRAINT FK_unitA_unit
FOREIGN KEY (UnitID) REFERENCES Unit (UnitID)
CREATE TABLE UnitB (
UnitID CONSTRAINT PK_unitB PRIMARY KEY,
[Bench Warrants] Long
)
ALTER TABLE UnitB
ADD CONSTRAINT FK_unitB_unit
FOREIGN KEY (UnitID) REFERENCES Unit (UnitID)
CREATE TABLE UnitC (
UnitID CONSTRAINT PK_unitC PRIMARY KEY,
Fingerprints Long
)
ALTER TABLE UnitC
ADD CONSTRAINT FK_unitC_unit
FOREIGN KEY (UnitID) REFERENCES Unit (UnitID)
에 동참 다른 테이블에서 단위 별 필드를 배치합니다.
이보다 쉽게 디자인 한 테이블을 작성, 직접 엑셀 테이블을 가져 오는 대신 빈 필드를
CREATE TABLE Unit (
UnitID CONSTRAINT PK_unit PRIMARY KEY,
Date datetime,
Cars long,
Boats long,
Tags long,
Guns long,
[Missing Persons] Long,
[Bench Warrants] Long,
Fingerprints Long
)
수 있도록, 그냥 엑셀 테이블을 연결 한 다음에 콘텐츠를 추가 사용자 지정 추가 쿼리가있는 공통 테이블 -
또한 첫 번째 또는 세 번째 솔루션을 권하고 싶지만 OP가 데이터에 대해 얼마나 많은 제어를하는지에 따라 크게 달라질 수 있습니다. SQL Server의 테이블에서 테이블을 가져 오는 경우 Union을 선택하는 것이 가장 좋습니다. 그렇지 않으면 재 설계가 더 좋을 수 있습니다. – PowerUser
두 번째 옵션을 사용해 보겠습니다. 현재 Excel 스프레드 시트를 사용하여 여러 필드의 통계를 여러 필드에서 가져오고 있으므로 한 개의 몬스터 테이블을 만들 수 없습니다. – Rory
파워, 제 3의 솔루션이 마음에 들지만 엑셀에서 엑셀이나 알파 5 양식 제출으로 옮길 때가 있습니다. – Rory