Sakhir Grand Prix
01/Classification
Finishing order
| Pos | Driver | Constructor | Grid | +/- | Laps | Time / status | Pts | Fastest lap |
|---|---|---|---|---|---|---|---|---|
| 1 | Sergio Pérez | Racing Point | 5 | +4 | 87 | 1:31:15.114 | 25 | 56.789 L69 |
| 2 | Esteban Ocon | Renault | 11 | +9 | 87 | +10.518 | 18 | 57.350 L75 |
| 3 | Lance Stroll | Racing Point | 10 | +7 | 87 | +11.869 | 15 | 57.388 L85 |
| 4 | Carlos Sainz | McLaren | 8 | +4 | 87 | +12.580 | 12 | 57.165 L80 |
| 5 | Daniel Ricciardo | Renault | 7 | +2 | 87 | +13.330 | 10 | 56.979 L57 |
| 6 | Alexander Albon | Red Bull | 12 | +6 | 87 | +13.842 | 8 | 57.056 L52 |
| 7 | Daniil Kvyat | AlphaTauri | 6 | -1 | 87 | +14.534 | 6 | 57.001 L80 |
| 8 | Valtteri Bottas | Mercedes | 1 | -7 | 87 | +15.389 | 4 | 56.563 L60 |
| 9 | George Russell | Mercedes | 2 | -7 | 87 | +18.556 | 3 | 55.404 L80 |
| 10 | Lando Norris | McLaren | 19 | +9 | 87 | +19.541 | 1 | 57.270 L85 |
| 11 | Pierre Gasly | AlphaTauri | 9 | -2 | 87 | +20.527 | 0 | 57.220 L53 |
| 12 | Sebastian Vettel | Ferrari | 13 | +1 | 87 | +22.611 | 0 | 56.905 L56 |
| 13 | Antonio Giovinazzi | Alfa Romeo | 14 | +1 | 87 | +24.111 | 0 | 56.887 L56 |
| 14 | Kimi Räikkönen | Alfa Romeo | 18 | +4 | 87 | +26.153 | 0 | 57.375 L56 |
| 15 | Kevin Magnussen | Haas F1 Team | 15 | 0 | 87 | +32.370 | 0 | 57.516 L57 |
| 16 | Jack Aitken | Williams | 17 | +1 | 87 | +33.674 | 0 | 57.392 L56 |
| 17 | Pietro Fittipaldi | Haas F1 Team | 20 | +3 | 87 | +36.858 | 0 | 57.742 L56 |
| R | Nicholas Latifi | Williams | 16 | — | 52 | Engine | 0 | 58.206 L29 |
| R | Max Verstappen | Red Bull | 3 | — | 0 | Accident | 0 | — |
| R | Charles Leclerc | Ferrari | 4 | — | 0 | Collision | 0 | — |
Ordered on the source’s position column and printed from position_text. Those two disagree on purpose: position is a sort key that is never null, and position_text is what happened to the car. 3 of 20 cars here were not classified (3 retired). Across the archive that is 9,612 of 26,048 result rows, so a page that printed the sort key would tell more than a third of every field it finished.
02/Grid to finish
Grid minus finishing position
| Driver | Constructor | Grid | Fin | +/- |
|---|---|---|---|---|
| Esteban Ocon | Renault | 11 | 2 | +9 |
| Lando Norris | McLaren | 19 | 10 | +9 |
| Lance Stroll | Racing Point | 10 | 3 | +7 |
| Alexander Albon | Red Bull | 12 | 6 | +6 |
| Sergio Pérez | Racing Point | 5 | 1 | +4 |
| Driver | Constructor | Grid | Fin | +/- |
|---|---|---|---|---|
| Valtteri Bottas | Mercedes | 1 | 8 | -7 |
| George Russell | Mercedes | 2 | 9 | -7 |
| Pierre Gasly | AlphaTauri | 9 | 11 | -2 |
| Daniil Kvyat | AlphaTauri | 6 | 7 | -1 |
Movement is grid minus finishing position, and it is computed for 17 of the 20 cars entered. It is left blank for the other 3: a car that was not classified has no finishing position to subtract from, and no car here carries grid 0, the value the source uses for a pit lane start or for no recorded grid slot. Scoring a grid of 0 as a gain of every place on the grid is the arithmetic this rule exists to stop; 266 of 26,048 rows across the archive are grid 0, and 40 of those were classified.
03/The 2020 season
JUL 5 to DEC 13
| Rd | Date | Grand Prix | Circuit | Winner | Constructor | Cars |
|---|---|---|---|---|---|---|
| 1 | JUL 5 | Austrian Grand Prix | Red Bull Ring | Valtteri Bottas | Mercedes | 20 |
| 2 | JUL 12 | Styrian Grand Prix | Red Bull Ring | Lewis Hamilton | Mercedes | 20 |
| 3 | JUL 19 | Hungarian Grand Prix | Hungaroring | Lewis Hamilton | Mercedes | 20 |
| 4 | AUG 2 | British Grand Prix | Silverstone Circuit | Lewis Hamilton | Mercedes | 20 |
| 5 | AUG 9 | 70th Anniversary Grand Prix | Silverstone Circuit | Max Verstappen | Red Bull | 20 |
| 6 | AUG 16 | Spanish Grand Prix | Circuit de Barcelona-Catalunya | Lewis Hamilton | Mercedes | 20 |
| 7 | AUG 30 | Belgian Grand Prix | Circuit de Spa-Francorchamps | Lewis Hamilton | Mercedes | 20 |
| 8 | SEP 6 | Italian Grand Prix | Autodromo Nazionale di Monza | Pierre Gasly | AlphaTauri | 20 |
| 9 | SEP 13 | Tuscan Grand Prix | Autodromo Internazionale del Mugello | Lewis Hamilton | Mercedes | 20 |
| 10 | SEP 27 | Russian Grand Prix | Sochi Autodrom | Valtteri Bottas | Mercedes | 20 |
| 11 | OCT 11 | Eifel Grand Prix | Nürburgring | Lewis Hamilton | Mercedes | 20 |
| 12 | OCT 25 | Portuguese Grand Prix | Autódromo Internacional do Algarve | Lewis Hamilton | Mercedes | 20 |
| 13 | NOV 1 | Emilia Romagna Grand Prix | Autodromo Enzo e Dino Ferrari | Lewis Hamilton | Mercedes | 20 |
| 14 | NOV 15 | Turkish Grand Prix | Istanbul Park | Lewis Hamilton | Mercedes | 20 |
| 15 | NOV 29 | Bahrain Grand Prix | Bahrain International Circuit | Lewis Hamilton | Mercedes | 20 |
| 16 | DEC 6 | Sakhir Grand Prix | Bahrain International Circuit | Sergio Pérez | Racing Point | 20 |
| 17 | DEC 13 | Abu Dhabi Grand Prix | Yas Marina Circuit | Max Verstappen | Red Bull | 20 |
Every figure here is one race, read from f1_results and f1_races. The finishing order is the source’s position column; the printed position is position_text, which is a letter on 9,612 of 26,048 rows across the archive (R retired 9,089, W withdrew 364, D disqualified 159). Grid 0 is a pit lane start and prints as PIT, not as a place ahead of pole; 266 of 26,048 rows are grid 0. Time is a total for the winner and a gap to the car ahead for everyone else, and it is present on 8,508 of 26,048 rows only, so most of the archive shows the status instead; where both exist and the status is not “Finished” the status is printed beside the time, because 8,335 of 16,436 classified rows finished lapped or otherwise not cleanly. The fastest lap column is empty before 2004: the source carries lap timing on 8,977 of 26,048 rows and a ranked fastest lap in 447 of 1,161 races, and speed on 8,238 of those, none after 2024. Points are printed as the source stores them and are never rounded to a whole number: 38 of 26,048 rows are fractional (0.5, 1.33, 3.14), which is half points for a shortened race and a split score for a shared car, and every one of them is real. Three races (1951 French, 1956 Argentine, 1957 British) print two cars as first, because two drivers shared one car and the record books credit both; in those three the source hangs the race points on other rows, which is why 5 of 1,164 winning rows across the archive print zero points. Constructors carry no logo in any f1_* table, so none is drawn and none is invented. The 2020 season is complete at 17 rounds.