|
1 | | -<!-- docs: sync from coderbuzz/codex@5aee801 --> |
| 1 | +<!-- docs: sync from coderbuzz/codex@aa9c4da --> |
2 | 2 |
|
3 | 3 | # @coderbuzz/sql: AI Expert Knowledge Reference |
4 | 4 |
|
@@ -1789,17 +1789,17 @@ The peers are optional through `peerDependenciesMeta`. Published versions up to |
1789 | 1789 |
|
1790 | 1790 | Machine-readable source of truth: `https://raw.githubusercontent.com/coderbuzz/benchmarks/main/results/latest.json` (suite ids `sql-simple`, `sql-join`, `sql-insert`, `sql-batch`, `sql-cte`, `sql-10-conditions`; each entry has `winner`, `factorVsNext`, `factorVsBest`, `higherIsBetter`). Quote numbers from there, not from memory, and not from the in-repo suites, which are for A/B runs between versions only. |
1791 | 1791 |
|
1792 | | -Numbers from [github.com/coderbuzz/benchmarks](https://github.com/coderbuzz/benchmarks) (`results/latest.json`): reference VM (Intel Xeon Platinum 8255C @ 2.50GHz, 4 cores, Linux x64), Bun 1.4.3, run of 2026-10-10 (benchmarks `6ed4ccf`). @coderbuzz/sql 0.9.6 against Kysely 0.29.6 and Drizzle ORM 0.45.3; query **compilation** throughput only (building the SQL string, no database round trip), ops/s, best of 3 processes, higher is better. |
| 1792 | +Numbers from [github.com/coderbuzz/benchmarks](https://github.com/coderbuzz/benchmarks) (`results/latest.json`): cloud machine (Intel Xeon @ 2.80GHz, family 6 model 85 stepping 7, 4 cores, Linux x64), Bun 1.4.3, run of 2026-10-10 (benchmarks `f9601b4`). @coderbuzz/sql 0.9.6 against Kysely 0.29.6 and Drizzle ORM 0.45.3; query **compilation** throughput only (building the SQL string, no database round trip), ops/s, best of 3 processes, higher is better. |
1793 | 1793 |
|
1794 | 1794 | | Scenario | @coderbuzz/sql | Kysely | Factor vs Kysely | Drizzle ORM | Factor vs Drizzle | |
1795 | 1795 | |---|---|---|---|---|---| |
1796 | | -| SELECT simple | **804,807 ops/s** | 319,742 | **2.5x** | 29,699 | **27.1x** | |
1797 | | -| SELECT JOIN (2 tables) | **340,039 ops/s** | 186,871 | **1.8x** | 12,669 | **26.8x** | |
1798 | | -| INSERT single row | **1,119,447 ops/s** | 190,416 | **5.9x** | 33,574 | **33.3x** | |
1799 | | -| INSERT batch 100 rows | **46,379 ops/s** | 7,077 | **6.6x** | 497 | **93.3x** | |
1800 | | -| CTE (WITH clause) | **217,074 ops/s** | 102,676 | **2.1x** | 23,107 | **9.4x** | |
1801 | | -| 10 nested WHERE conditions | **307,419 ops/s** | 70,826 | **4.3x** | 10,873 | **28.3x** | |
1802 | | - |
1803 | | -`@coderbuzz/sql` is 1.8-6.6x faster than Kysely and 9.4-93x faster than Drizzle ORM on every query type in the suite. The lead over Kysely is largest on inserts (5.9x single row, 6.6x batch) and many conditions (4.3x), smallest on JOIN and CTE (1.8-2.1x): `@coderbuzz/sql` compiles straight to a string, Kysely builds and walks an AST, Drizzle adds its ORM layer. |
| 1796 | +| SELECT simple | **684,901 ops/s** | 331,204 | **2.1x** | 28,258 | **24.2x** | |
| 1797 | +| SELECT JOIN (2 tables) | **344,165 ops/s** | 177,057 | **1.9x** | 11,837 | **29.1x** | |
| 1798 | +| INSERT single row | **1,089,364 ops/s** | 205,742 | **5.3x** | 31,137 | **35.0x** | |
| 1799 | +| INSERT batch 100 rows | **46,259 ops/s** | 7,242 | **6.4x** | 520 | **89.0x** | |
| 1800 | +| CTE (WITH clause) | **210,058 ops/s** | 110,003 | **1.9x** | 24,185 | **8.7x** | |
| 1801 | +| 10 nested WHERE conditions | **281,191 ops/s** | 72,561 | **3.9x** | 10,412 | **27.0x** | |
| 1802 | + |
| 1803 | +`@coderbuzz/sql` is 1.9-6.4x faster than Kysely and 8.7-89x faster than Drizzle ORM on every query type in the suite. The lead over Kysely is largest on inserts (5.3x single row, 6.4x batch) and many conditions (3.9x), smallest on JOIN and CTE (1.9x): `@coderbuzz/sql` compiles straight to a string, Kysely builds and walks an AST, Drizzle adds its ORM layer. |
1804 | 1804 |
|
1805 | 1805 | These measure query **compilation** only (building the SQL string), not database round trips. Earlier tables in these docs (Apple M-series, older versions: 3-8x Kysely, 50-147x Drizzle) came from another machine and are superseded; do not quote them. |
0 commit comments