DuckDB QuickJS Runtime Extension
					Maintainer(s):
					
						lmangani
					
					
				
				
				Installing and Loading
INSTALL quickjs FROM community;
LOAD quickjs;
Example
-- Quack JS with QuickJS
-- Scalar
D SELECT quickjs('2+2');
┌────────────────┐
│ quickjs('2+2') │
│    varchar     │
├────────────────┤
│ 4              │
└────────────────┘
-- Scalar Eval
D SELECT quickjs_eval('(a, b) => a + b', 5, 3);
┌───────────────────────────────────────┐
│ quickjs_eval('(a, b) => a + b', 5, 3) │
│                 json                  │
├───────────────────────────────────────┤
│ 8                                     │
└───────────────────────────────────────┘
-- Table Eval
D SELECT * FROM quickjs('parsed_arg0.map(x => x * arg1)', '[1, 2, 3, 4, 5]', 3);
┌────────┐
│ result │
│  json  │
├────────┤
│ 3      │
│ 6      │
│ 9      │
│ 12     │
│ 15     │
└────────┘
About quickjs
QuickJS DuckDB Extension
This extension provides an embedded QuickJS-NG engine for DuckDB. It allows executing JavaScript code directly within your SQL queries.
QuickJS-NG is a small, fast, and embeddable JavaScript engine that supports modern JavaScript features including ES2020.
This extension is experimental and potentially unstable. Do not use it in production.
Added Functions
| function_name | function_type | description | comment | examples | 
|---|---|---|---|---|
| quickjs | scalar | NULL | NULL | |
| quickjs | table | NULL | NULL | |
| quickjs_eval | scalar | NULL | NULL |