q1340

R-SET GOLD-ONLY float-aggregate-order

student_club · mini_dev_postgresql from https://bird-bench.oss-cn-beijing.aliyuncs.com/minidev.zip (sha256 cc48ba16838204e4e214512030cb572eeb5f7bcdd999bae4b9b6ff12ec13b92f, downloaded 2026-09-07), member minidev/MINIDEV/mini_dev_postgresql.json

The question

Calculate the difference of the total amount spent in all events by the Student_Club in year 2019 and 2020.

the hint the set supplies: The first 4 strings of the event_date values in the event table can represent year; The difference of the total amount spent = SUBTRACT(spent where YEAR(event_date) = 2019, spent where YEAR(event_date) = 2020)

This question was audited without a prediction beside it, so there is nothing to compare the gold with. The probes below read the gold alone.

The statements

gold

SELECT SUM(CASE WHEN SUBSTR(T1.event_date, 1, 4) = '2019' THEN T2.spent ELSE 0 END) - SUM(CASE WHEN SUBSTR(T1.event_date, 1, 4) = '2020' THEN T2.spent ELSE 0 END) AS num FROM event AS T1 INNER JOIN budget AS T2 ON T1.event_id = T2.link_to_event

this statement states no ordering of its own

sha256:8ec9642f1f2d773f23ac5c701909c24d0e993619408c86f4e3ea41ebf18e2bca

The results

gold, 1 row

from evidence-gold.json, 1 row

numfloat4
2086.05

The probes

A smell is a mechanical reason to read this gold statement again. It is a heuristic: it does not state that the statement is wrong, and a maintainer decides.

ordering-over-numeric-text not applicable

this statement orders by a text column holding only numbers, and ordering it as a number gives a different answer, so the gold may be sorting 9.5 above 10

the statement states no top level ORDER BY

what it measured
{
  "heuristic": true,
  "reason": "the statement states no top level ORDER BY"
}

arbitrary-cut not applicable

this statement cuts its result at a LIMIT that does not decide which rows come back, so a different but equally correct statement can return other rows and score zero

the statement states no LIMIT

what it measured
{
  "heuristic": true,
  "reason": "the statement states no LIMIT"
}

float-aggregate-order fired

this statement aggregates floating point numbers, so its last digits depend on the order the rows were summed in; the values agree to six significant digits

from smells.json, 1 row

2086.0498
what it measured
{
  "heuristic": true,
  "rule": "R-SET",
  "baseline_result_hash": "sha256:8ec9642f1f2d773f23ac5c701909c24d0e993619408c86f4e3ea41ebf18e2bca",
  "baseline_result": {
    "columns": [
      {
        "name": "num",
        "declared_type": "float4"
      }
    ],
    "row_count": 1,
    "truncated": false,
    "rows_shown": 1,
    "rows": [
      [
        {
          "type": "dec",
          "value": "2086.05"
        }
      ]
    ],
    "result_hash": "sha256:8ec9642f1f2d773f23ac5c701909c24d0e993619408c86f4e3ea41ebf18e2bca"
  },
  "planner_statistics": {
    "event": {
      "last_analyze": null,
      "last_autoanalyze": null,
      "n_mod_since_analyze": 42
    },
    "budget": {
      "last_analyze": null,
      "last_autoanalyze": null,
      "n_mod_since_analyze": 52
    }
  },
  "shuffle": {
    "seed": "1",
    "row_limit": 300000,
    "tables": [
      "event",
      "budget"
    ],
    "tables_not_shuffled": [],
    "tables_skipped_for_size": {
      "laptimes": 400524,
      "legalities": 427907,
      "posthistory": 303155,
      "trans": 1056320,
      "yearmonth": 383282
    },
    "tables_not_reached_by_a_copy": {}
  },
  "shuffled_copies": {
    "run": true,
    "verdict": "not_equal",
    "differs": true,
    "result_hash": "sha256:9ad97a5c0926efb47b6342d9c84bb54b4da61167b93ffc31827473296a8cc4fc",
    "result": {
      "columns": [
        {
          "name": "num",
          "declared_type": "float4"
        }
      ],
      "row_count": 1,
      "truncated": false,
      "rows_shown": 1,
      "rows": [
        [
          {
            "type": "dec",
            "value": "2086.0498"
          }
        ]
      ],
      "result_hash": "sha256:9ad97a5c0926efb47b6342d9c84bb54b4da61167b93ffc31827473296a8cc4fc"
    }
  },
  "plan_variant": {
    "run": false,
    "reason": "the plan variant was not asked for"
  },
  "float_cells": [
    {
      "row": 0,
      "column": "num",
      "declared_type": "float4",
      "baseline": "2086.05",
      "rerun": "2086.0498"
    }
  ],
  "significant_digits": 6
}

The evidence records

gold: evidence-gold.json

SELECT SUM(CASE WHEN SUBSTR(T1.event_date, 1, 4) = '2019' THEN T2.spent ELSE 0 END) - SUM(CASE WHEN SUBSTR(T1.event_date, 1, 4) = '2020' THEN T2.spent ELSE 0 END) AS num FROM event AS T1 INNER JOIN budget AS T2 ON T1.event_id = T2.link_to_event
statement read from
data/questions/mini_dev_postgresql.json
digest
sha256:d2731292f20b8d8569cd956dd747ffe1df13cd625076263e38ae9ebcef50b1ab
origin
https://bird-bench.oss-cn-beijing.aliyuncs.com/minidev.zip (sha256 cc48ba16838204e4e214512030cb572eeb5f7bcdd999bae4b9b6ff12ec13b92f, downloaded 2026-09-07), member minidev/MINIDEV/mini_dev_postgresql.json, 2024-06-19

result_hash sha256:8ec9642f1f2d773f23ac5c701909c24d0e993619408c86f4e3ea41ebf18e2bca recomputed from this JSON: match

record_hash sha256:e025401a743c2729ec0e39490be2eadc07192273bc3747b6338e0c2a56e8f070 recomputed from this JSON: match

the result this record holds, 1 row

from evidence-gold.json, 1 row

numfloat4
2086.05
what ran, and where
run
audit-adbef1a5-9f41-4a8f-ac55-8c3d8df71394
executed at
2026-09-08T05:19:04.900879+00:00
data as of
2026-09-08T05:18:53.188261+00:00
backend at checkout
PostgreSQL 16.15 (Debian 16.15-1.pgdg13+2) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 14.2.0-19) 14.2.0, 64-bit | server=172.17.0.2/32:5432 | database=bird
backend that answered
PostgreSQL 16.15 (Debian 16.15-1.pgdg13+2) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 14.2.0-19) 14.2.0, 64-bit | server=172.17.0.2/32:5432 | database=bird
database role
auditor
replay rule
R-SET
question set version
sha256:d2731292f20b8d8569cd956dd747ffe1df13cd625076263e38ae9ebcef50b1ab
validator
audit:libpg_query-parse
checks run
parses_as_exactly_one_statement, the_one_statement_is_a_select, no_placeholder_without_a_bound_parameter
statement timeout
30000 ms
rows
1 row
the session it ran under
engine
postgresql
time_zone
Etc/UTC
date_style
ISO, MDY
interval_style
postgres
extra_float_digits
1
database_collation
en_US.utf8
work_mem
4096
hash_mem_multiplier
2

recorded beside them

statement_timeout
0
search_path
"$user", public
server_version
16.15 (Debian 16.15-1.pgdg13+2)
server_version_num
160015
transaction_read_only
on
max_parallel_workers_per_gather
2
server_encoding
UTF8
datlocprovider
c
daticulocale
datcollversion
2.41
the rendering and the data
version
attestql/audit/2
numeric_scale
6
timestamp_format
%Y-%m-%dT%H:%M:%S.%fZ
timezone
UTC
null_rendering
NULL
encoding
utf-8
schema digest
sha256:06d01f2c3acde8cafe2e3f5e90d35a10d703b2b0d96962a645dd9c14b6769af0
source file sha256
sha256:31b1da211849d24a57c9af7636da46a5b82fc8a3ca1542bb3ebd8775e9a31cec
rows in public.budget
52
rows in public.event
42

Running these again

gold

re-run this statement read-only against PostgreSQL 16.15 (Debian 16.15-1.pgdg13+2) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 14.2.0-19) 14.2.0, 64-bit | server=172.17.0.2/32:5432 | database=bird under the session settings and over the data this record's fixture digest names, and compare the two results under R-SET

This question's run

run
audit-adbef1a5-9f41-4a8f-ac55-8c3d8df71394
server
PostgreSQL 16.15 (Debian 16.15-1.pgdg13+2) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 14.2.0-19) 14.2.0, 64-bit | server=172.17.0.2/32:5432 | database=bird
question set
mini_dev_postgresql from https://bird-bench.oss-cn-beijing.aliyuncs.com/minidev.zip (sha256 cc48ba16838204e4e214512030cb572eeb5f7bcdd999bae4b9b6ff12ec13b92f, downloaded 2026-09-07), member minidev/MINIDEV/mini_dev_postgresql.json
replay rule
R-SET

the run this question belongs to

The JSON this page was rendered from