Access 查询问题遇到错误
我有如下三个表:
create table T_P_Category (
CID int identity,
CName varchar(20) null,
P_CID int null,
Del_Flag int null,
constraint PK_T_P_CATEGORY primary key (CID)
)
create table T_PRODUCT (
PID int identity,
CID int null,
PName varchar(50) null,
PCode varchar(15) null,
PMemo text null,
ForeAlarm_L int null,
ForeAlarm_H int null,
Del_Flag int null,
constraint PK_T_PRODUCT primary key (PID)
)
alter table T_PRODUCT
add constraint FK_T_PRODUC_REFERENCE_T_P_CATE foreign key (CID)
references T_P_Category (CID)
create table T_Sale_His (
SID int identity,
PID int null,
SType int null,
SCount int null,
TDate char(10) null,
Del_Flag int null,
NewID int null,
UID int null,
constraint PK_T_SALE_HIS primary key (SID)
)
alter table T_Sale_His
add constraint FK_T_SALE_H_REFERENCE_T_PRODUC foreign key (PID)
references T_PRODUCT (PID)
在Delphi中对Access数据库进行如下操作:
Select * From
(Select * From T_PRODUCT Where Del_Flag <> 1) PRODUCT
Left Join
(Select PID, Sum(SCount) as HCount,
Max(TDate) as LTDate From T_Sale_His
Where Del_Flag <> 1 and SType in (1, 2) Group By PID) TSale
on (PRODUCT.PID = TSale.PID)
Left Join
(Select CID, CName From T_P_Category Where Del_Flag <> 1) Cate
on (PRODUCT.CID = Cate.CID)
得到如下错误信息:
语法错误 (操作符丢失) 在查询表达式 '(PRODUCT.PID = TSale.PID) Left Join (Select CID, CName From T_P_Category Where Del_Flag <> 1) Cate on (PRODUCT.CID = Cate.CID)' 中。
在SQL Server中一切正常,真是不解阿,各位高手请指点!