【发布时间】:2017-03-10 14:43:30
【问题描述】:
我有这个查询,它在postgres 上给了我想要的结果
SELECT
t.*,
ROW_NUMBER() OVER (PARTITION BY t."Internal_reference", t."Movement_date" ORDER BY t."Movement_date") AS "cnt"
FROM (SELECT
"Internal_reference",
MAX("Movement_date") AS maxtime
FROM dw."LO-D4_Movements"
GROUP BY "Internal_reference") r
INNER JOIN dw."LO-D4_Movements" t
ON t."Movement_date" = r.maxtime
AND t."Internal_reference" = r."Internal_reference"
问题是我必须在Access 上翻译上面的查询,其中不存在解析函数...
我用这个answer 构建了下面的查询
SELECT
t."Internal_reference",
t.from_code,
t.to_code,
t."Movement_date",
t.shipment_number,
t."PO_number",
t."Quantity",
t."Movement_value",
t."Site",
t."Import_date",
COUNT(*) AS "cnt"
FROM (
SELECT "Internal_reference",
MAX("Movement_date") AS maxtime
FROM dw."LO-D4_Movements"
GROUP BY "Internal_reference") r
LEFT OUTER JOIN dw."LO-D4_Movements" t
ON t."Movement_date" = r.maxtime AND t."Internal_reference" = r."Internal_reference"
GROUP BY
t.from_code,
t.to_code,
t."Movement_date",
t.shipment_number,
t."PO_number",
t."Quantity",
t."Movement_value",
t."Site",
t."Import_date",
t."Internal_reference"
ORDER BY t.from_code
问题是我在cnt 列中只有1。
我试图通过删除 internal_reference 来调整它(见下文)
SELECT
t.from_code,
t.to_code,
t."Movement_date",
t.shipment_number,
t."PO_number",
t."Quantity",
t."Movement_value",
t."Site",
t."Import_date",
COUNT(*) AS "cnt"
FROM (
SELECT "Internal_reference",
MAX("Movement_date") AS maxtime
FROM dw."LO-D4_Movements"
GROUP BY "Internal_reference") r
LEFT OUTER JOIN dw."LO-D4_Movements" t
ON t."Movement_date" = r.maxtime AND t."Internal_reference" = r."Internal_reference"
GROUP BY
t.from_code,
t.to_code,
t."Movement_date",
t.shipment_number,
t."PO_number",
t."Quantity",
t."Movement_value",
t."Site",
t."Import_date"
ORDER BY t.from_code
但是,结果更糟。 cnt 正在增长,但它给了我错误的 cnt
任何帮助都非常受欢迎,因为我正在慢慢失去理智。
谢谢
编辑:请找sqlfiddle
【问题讨论】:
-
一种选择是进行生成表查询并添加自动编号字段。
-
嗨@TheGambill 我只是从那个表中提取数据,我不确定我想创建一个新表,你需要 vba 在 Access 中创建临时表。
-
有道理...我正在考虑。很久以前去 SQL Server...访问有点生疏。
-
@TheGambill 我说的是 Access-hit,而不是 sqlserver ;)
-
您能否为您的 PostgreSQL 查询创建一个 SQL Fiddle,以显示一些示例数据和所需结果?
标签: sql postgresql ms-access analytics