Aggregated Methods
Learn about DataStore's aggregated methods
Original data
name | age | income |
---|---|---|
John | 26 | $50,000 |
Marry | 29 | $60,000 |
Peter | 34 | $100,000 |
Donald | 28 | $80,000 |
filter()
$store = $this->dataStore("data")
->filter("income",">",50000);
name | age | income |
---|---|---|
Marry | 29 | $60,000 |
Peter | 34 | $100,000 |
Donald | 28 | $80,000 |
filter($callback)
$store = $this->dataStore("data")
->filter(function($row){
return $row["income"]>50000;
});
name | age | income |
---|---|---|
Marry | 29 | $60,000 |
Peter | 34 | $100,000 |
Donald | 28 | $80,000 |
where()
$store = $this->dataStore("data")
->where("income",60000);
name | age | income |
---|---|---|
Marry | 29 | $60,000 |
except()
$store = $this->dataStore("data")
->except("income","age");
name |
---|
John |
Marry |
Peter |
Donald |
only()
$store = $this->dataStore("data")
->only("name","income");
name | income |
---|---|
John | $50,000 |
Marry | $60,000 |
Peter | $100,000 |
Donald | $80,000 |
whereIn()
$store = $this->dataStore("data")
->whereIn("name",["John","Marry"]);
name | age | income |
---|---|---|
John | 26 | $50,000 |
Marry | 29 | $60,000 |
whereNotIn()
$store = $this->dataStore("data")
->whereNotIn("name",["John","Marry"]);
name | age | income |
---|---|---|
Peter | 34 | $100,000 |
Donald | 28 | $80,000 |
Description
This example shows some of most used methods for filtering in DataStore
.
Beside above most used methods, there are number of additional methods:
all()
: Return all rowstop($size,$offset)
: Get the top {$size} rows starting from {$offset}topByPercent($percent)
: Get top percent of rowsbottom($size)
: Get the bottom {$size} rowsbottomByPercent($percent)
: Get bottom percent of rowsfirst($callback)
: Return the first row matching condition defined by callback functionlast($callback)
: Return the last row matching condition defined by callback functiontake($limit)
: Get number of rows, if $limit is negative, take the bottom