Examples

Complete worked examples, from basic selection to multi-constraint problems. Each one creates sample data, writes a query, and walks through the result.

Basic

Knapsack Problem

Select items to maximize value while staying within a weight limit. The classic optimization problem.

Binary Variables Single Constraint MAXIMIZE
View Example
Basic

Production Planning

Determine how many units of each product to manufacture within capacity constraints.

Integer Variables Row-Level Bounds MINIMIZE
View Example
Basic

Item Filtering

Select items matching specific criteria and ranges using BETWEEN and IN clauses.

Binary Variables BETWEEN Clause IN Clause
View Example
Intermediate

Diet Planning

Select meals to minimize cost while meeting nutritional requirements for protein, carbs, and fat.

Binary Variables Multiple Constraints Lower+Upper Bounds MINIMIZE
View Example
Intermediate

Multi-Variable Assignment

Assign workers to tasks with multiple decision variables per row and equality constraints.

Multiple Decision Variables Equality Constraints
View Example
Intermediate

Dynamic Constraints

Pull constraint bounds from a configuration table, and apply per-category rules with WHEN.

Scalar Subquery WHEN Filter Config-Driven Bounds
View Example
Advanced

Portfolio Optimization

Select assets to maximize expected return while respecting risk limits and diversification rules.

Scalar Subquery PER Grouping Complex Coefficients
View Example
Advanced

Resource Scheduling

Assign resources to time slots across multiple tables using JOIN with decision variables.

JOIN Complex WHERE
View Example
Basic

Feasibility: Constraint Satisfaction

Find a valid shift assignment with no objective. Demonstrates that DeciDB solves constraint satisfaction problems, not just optimization.

Feasibility Mode No Objective PER
View Example
Intermediate

Per-Group Limits

Enforce a separate constraint per department using PER, generating one constraint per distinct column value without hardcoding any group names.

PER Keyword Group Constraints MAXIMIZE
View Example
Advanced

Table-Scoped Variables

Make one decision per entity across a join using DECIDE Table.var, ensuring consistent retain/release choices even when a nurse appears in many shift rows.

DECIDE Table.var JOIN Entity Consistency
View Example
Advanced

Relief Allocation

Ship supplies from depots to regions across a three-way join, charging each depot's opening cost once with a relation-qualified reducer, SUM(D: expr).

SUM(D: expr) DECIDE Table.var PER WHEN
View Example

Ready to Build Your Own?

Check out the documentation for the complete syntax reference and learn more about the project.