我试图创建一个表格" USAGEFACT"有4个表的多列。 我正在使用MS access 2013。 我得到的错误只是" CREATE TABLE"
中的语法错误我正在使用的表是
FACT(Semester_ID,Class_ID)。
类(Class_ID,Class_Description)。
学期(Semester_ID,Semester_Description)。
学生(Student_ID,Class_ID)。
*这些不是这些表格中唯一的列
目前,我有以下不正确的查询:
create table USAGEFACT as
(select c.CLASS_DESCRIPTION, s.SEMESTER_DESCRIPTION, st.TYPE, st.SEX
from FACT, CLASS as c, SEMESTER as s, STUDENT as st
where FACT.CLASS_ID = c.CLASS_ID
and s.SEMESTER_ID = FACT.SEMESTER_ID
and c.CLASS_ID = st.CLASS_ID);
我担心我需要使用连接。我想也许我可以创建一组2个临时表,每个表包含2个已连接的表,然后连接这2个临时表,每个临时表都是从其他2个表创建的。
深深感激。
答案 0 :(得分:0)
在MS Access中,您无法使用CREATE TABLE as SELECT
但SELECT ... INTO
语句
因此,我使用了明确的JOIN
表示法来进一步阅读您的查询
试试这个:
SELECT c.CLASS_DESCRIPTION as CLASS_DESCRIPTION,
s.SEMESTER_DESCRIPTION as SEMESTER_DESCRIPTION,
st.[TYPE] as ST_TYPE, st.SEX as SEX
INTO USAGEFACT
FROM FACT
INNER JOIN CLASS as c
ON FACT.CLASS_ID = c.CLASS_ID
INNER JOIN SEMESTER as s
ON s.SEMESTER_ID = FACT.SEMESTER_ID
INNER JOIN STUDENT as st
ON c.CLASS_ID = st.CLASS_ID