我在访问SQL查询时遇到问题(我熟悉MS SQL)。我在尝试将查询限制为过去一年中的日期时遇到错误。 DataTable按每个城市日期的销售额进行组织。
SELECT A.City, A.Region, Sum(A.Sales) AS TotalRev
FROM DataTable AS A
WHERE A.Date<=DateAdd("dd",-365,Date())
GROUP BY A.Month, A.City, A.Region
我收到的错误是&#34;无效的程序调用&#34;
答案 0 :(得分:2)
也许原因是dd
不是MS Access中的有效间隔(这里是documentation)。试试这个:
SELECT A.City, A.Region, Sum(A.Sales) AS TotalRev
FROM DataTable AS A
WHERE A.Date <= DateAdd("d", -365, Date())
GROUP BY A.Month, A.City, A.Region;
那就是说,我不明白为什么A.Month
中有GROUP BY
,SELECT
而不是SELECT A.City, A.Region, Sum(A.Sales) AS TotalRev
FROM DataTable AS A
WHERE A.Date >= DateAdd("yyyy", -1, Date())
GROUP BY A.City, A.Region;
。此外,此查询与您想要的相反。我希望更像是:
import java.util.Scanner;
import java.io.*;
import java.io.PrintWriter;
public class comparison_rylan_howard {
public static void main(String[] args) throws IOException {
Scanner reader = new Scanner(new
File("H:\\NetBeansProjects\\Unit1\\comparison.txt"));
try (PrintWriter writer = new PrintWriter("Results.txt")) {
while (reader.hasNext()) {
double first = reader.nextDouble();
double second = reader.nextDouble();
if (first <= -1 || second <= -1) {
writer.println("Error");
}
if (first > second) {
writer.println(">");
writer.println(" ");
}
if (first < second) {
writer.println("<");
writer.println(" ");
} else {
writer.println("=");
writer.println(" ");
}
}
}
}
}