Sql 正在删除除此之外的任何提示。我立即得到一个错误:语法错误(缺少运算符)在查询表达式x.EmployeeID=y.EmployeeID内部将PlanTbl作为z连接到y.PlanID=z.PlanID上。另一个错误:您试图执行的查询未将指定的表达式“AstF
Sql 正在删除除此之外的任何提示。我立即得到一个错误:语法错误(缺少运算符)在查询表达式x.EmployeeID=y.EmployeeID内部将PlanTbl作为z连接到y.PlanID=z.PlanID上。另一个错误:您试图执行的查询未将指定的表达式“AstF,sql,ms-access-2007,Sql,Ms Access 2007,正在删除除此之外的任何提示。我立即得到一个错误:语法错误(缺少运算符)在查询表达式x.EmployeeID=y.EmployeeID内部将PlanTbl作为z连接到y.PlanID=z.PlanID上。另一个错误:您试图执行的查询未将指定的表达式“AstFirstName”作为聚合函数的一部分。现在:条件表达式中的数据类型不匹配。@Newbie,这是一个错误,因为“选择列表”中包含的列在“分组依据”中不存在。现在应该没事了。数据类型不匹配很可能是此行的原因。y.AwardDate介于“2005年
正在删除除此之外的任何提示。我立即得到一个错误:
语法错误(缺少运算符)在查询表达式x.EmployeeID=y.EmployeeID内部将PlanTbl作为z连接到y.PlanID=z.PlanID上。
另一个错误:您试图执行的查询未将指定的表达式“AstFirstName”作为聚合函数的一部分。现在:条件表达式中的数据类型不匹配。@Newbie,这是一个错误,因为“选择列表”中包含的列在“分组依据”中不存在。现在应该没事了。数据类型不匹配很可能是此行的原因。y.AwardDate介于“2005年1月1日”和“2005年12月31日”之间。
。您可以将硬编码日期替换为您自己的输入输出。我仍然会收到数据类型不匹配错误。除此之外,它没有提供任何提示。我立即得到一个错误:语法错误(缺少运算符)在查询表达式x.EmployeeID=y.EmployeeID内部将PlanTbl作为z连接到y.PlanID=z.PlanID上。
另一个错误:您试图执行的查询未将指定的表达式“AstFirstName”作为聚合函数的一部分。现在:条件表达式中的数据类型不匹配。@Newbie,这是一个错误,因为“选择列表”中包含的列在“分组依据”中不存在。现在应该没事了。数据类型不匹配很可能是此行的原因。y.AwardDate介于“2005年1月1日”和“2005年12月31日”之间。
。您可以将硬编码日期替换为您自己的输入输出。我仍然会收到数据类型不匹配错误。除此之外,它没有提供任何提示。请参阅我文章底部的说明。这是MS Access。是的,我能做到。我认为格式有点不同,但与其他主要数据库没有太大区别。我收到了与Rahul代码相同的错误。语法错误(查询表达式x.EmployeeID=y.EmployeeID内部连接PlanTbl中缺少运算符,如y.PlanID=z.PlanID上的z
Hmm…您的原始代码没有出现该错误?我已更新sql以将AwardDate与EmployeeID一起连接,因此您只能获得第一个奖励日期的奖励记录。仍然存在错误。让我尝试在关键字AS
(Access中需要)请参阅我文章底部的注释。这是MS Access。是的,我可以做到。我认为格式有点不同,但与其他主要数据库没有太大区别。我收到的错误与Rahul的代码相同。语法错误(查询表达式x.EmployeeID=y.EmployeeID内部连接PlanTbl中缺少运算符,如y.PlanID=z.PlanID上的z
Hmm…您的原始代码没有出现该错误?我已更新sql以将AwardDate与EmployeeID一起连接,因此您只能获得第一个奖励日期的奖励记录。仍然存在错误。让我尝试在关键字AS
(Access中需要)请参阅我文章底部的注释。这是MS Access。是的,我可以做到。我认为格式有点不同,但与其他主要数据库没有太大区别。我收到的错误与Rahul的代码相同。语法错误(查询表达式x.EmployeeID=y.EmployeeID内部连接PlanTbl中缺少运算符,如y.PlanID=z.PlanID上的z
Hmm…您的原始代码没有出现该错误?我已更新sql以将AwardDate与EmployeeID一起连接,因此您只能获得第一个奖励日期的奖励记录。仍然存在错误。让我尝试在关键字AS
(Access中需要)请参阅我文章底部的注释。这是MS Access。是的,我可以做到。我认为格式有点不同,但与其他主要数据库没有太大区别。我收到的错误与Rahul的代码相同。语法错误(查询表达式x.EmployeeID=y.EmployeeID内部连接PlanTbl中缺少运算符,如y.PlanID=z.PlanID上的z
Hmm…您的原始代码没有出现该错误?我已更新sql以将AwardDate与EmployeeID一起连接,因此您只能获得第一个奖励日期的奖励记录。仍然存在错误。让我尝试在关键词AS
(Access中需要)
AwardDate EmployeeID PlanID AwardedUnits
3/1/2005 100200 1 3
3/1/2008 100200 1 7
3/1/2005 100300 1 5
3/1/2013 100300 1 8
SELECT x.AstFirstName ,
x.AstLastName ,
y.AwardDate ,
y.AwardUnits ,
z.PlanDesc
FROM (AssociateTbl AS x
INNER JOIN AwardTbl AS y ON x.EmployeeID = y.EmployeeID)
INNER JOIN PlanTbl AS z ON y.PlanID = z.PlanID
WHERE y.AwardDate BETWEEN [Forms]![PlanFrm]![ReportSelectSbfrm].[Form]![StartDateTxt] And [Forms]![PlanFrm]![ReportSelectSbfrm].[Form]![EndDateTxt] ;
SELECT x.AstFirstName ,
x.AstLastName ,
y.AwardDate ,
y.AwardUnits ,
z.PlanDesc
FROM (AssociateTbl AS x
INNER JOIN AwardTbl AS y
ON x.EmployeeID = y.EmployeeID)
INNER JOIN PlanTbl AS z
ON y.PlanID = z.PlanID
WHERE y.AwardDate BETWEEN '1/1/2005' AND '12/31/2005'
GROUP BY y.EmployeeID,
x.AstFirstName ,
x.AstLastName ,
y.AwardDate ,
y.AwardUnits ,
z.PlanDesc
HAVING COUNT(*) = 1
select y.employeeId, y.awardDate from (
select x.employeeId, min(x.awardDate) as awardDate
from AssociateTbl as x
group by x.employeeId) as y
where y.awardDate >= :startAwardDate and y.awardDate < :endAwardDate;
SELECT x.AstFirstName ,
x.AstLastName ,
y.AwardDate ,
y.AwardUnits ,
z.PlanDesc
FROM ((AssociateTbl AS x
INNER JOIN AwardTbl AS y ON x.EmployeeID = y.EmployeeID)
INNER JOIN (select a.EmployeeID,min(a.AwardDate) AS MinAwardDate
from AwardTbl AS a
group by a.EmployeeID
having ((min(a.awardDate)>=[Forms]![PlanFrm]![ReportSelectSbfrm].[Form]![StartDateTxt]
and min(a.awardDate)<[Forms]![PlanFrm]![ReportSelectSbfrm].[Form]![EndDateTxt]))
) AS d on d.EmployeeID = x.EmployeeID
and d.MinAwardDate = y.AwardDate)
INNER JOIN PlanTbl AS z ON y.PlanID = z.PlanID