PHPackages                             dabl/query - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. dabl/query

ActiveLibrary[Database &amp; ORM](/categories/database)

dabl/query
==========

DABL object oriented Query builder

v1.2.4(8y ago)045512MITPHP

Since Jul 4Pushed 8y ago2 watchersCompare

[ Source](https://github.com/ManifestWebDesign/dabl-query)[ Packagist](https://packagist.org/packages/dabl/query)[ RSS](/packages/dabl-query/feed)WikiDiscussions master Synced 4w ago

READMEChangelogDependencies (3)Versions (15)Used By (2)

[![Build Status](https://camo.githubusercontent.com/7ef88c3469f5dae2ba48a91e463f897c7d505ee09b8794c3fb2b1f5b25ee7960/68747470733a2f2f7472617669732d63692e6f72672f4d616e696665737457656244657369676e2f6461626c2d71756572792e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/ManifestWebDesign/dabl-query)

DABL Query
==========

[](#dabl-query)

Lightweight object-oriented SQL query builder

Example
-------

[](#example)

code:

```
use Dabl\Query\Query;
use Dabl\Adapter\DABLPDO;

$q = Query::create('my_table')
    ->leftJoin('my_table.id', 'other_table.my_table_id')
    ->add('my_column', 'some value')
    ->orGreater('another_column', 5)
    ->groupBy('other_table.id')
    ->orderBy('my_table.name', Query::DESC);

echo "$q";

$pdo = DABLPDO::connect(array(
    'driver' => 'mysql',
    'host' => 'localhost',
    'dbname' => 'test',
    'user' => 'root',
    'password' => ''
));

$q->getQuery($pdo)->bindAndExecute();
```

output:

```
SELECT my_table.*
FROM my_table
	LEFT JOIN other_table ON (my_table.id = other_table.my_table_id)
WHERE
	my_column = 'some value'
	OR another_column > 5
GROUP BY other_table.id
ORDER BY my_table.name DESC
```

Features
--------

[](#features)

- Nested conditions in WHERE and HAVING clauses
- Subqueries
- Joins

###  Health Score

32

—

LowBetter than 69% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity71

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~43 days

Recently: every ~74 days

Total

14

Last Release

3081d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/459337?v=4)[Dan Blaisdell](/maintainers/danomatic)[@danomatic](https://github.com/danomatic)

---

Top Contributors

[![danomatic](https://avatars.githubusercontent.com/u/459337?v=4)](https://github.com/danomatic "danomatic (23 commits)")

---

Tags

abstractiondatabaseormsqlquerypropeldabl

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/dabl-query/health.svg)

```
[![Health](https://phpackages.com/badges/dabl-query/health.svg)](https://phpackages.com/packages/dabl-query)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
