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

Use scalar subqueries and CASE expressions to compute constraint bounds dynamically.

Scalar Subquery CASE Expression COUNT Simulation
View Example
Advanced

Portfolio Optimization

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

Scalar Subquery CASE Expression 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

Ready to Build Your Own?

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