rawQueryValue()
Executes a raw SQL query and returns only the first column of the result.
If the query contains LIMIT 1
, a single value is returned.
Otherwise, you’ll get an array with values from the first column of each row.
This is ideal for aggregate functions or scalar value extraction.
Signature:
public function rawQueryValue(string $query, ?array $bindParams = null): mixed
Basic Usage (Single Value)
$sql = 'SELECT COUNT(*) FROM test_users WHERE email LIKE ? LIMIT 1';
$count = $db->rawQueryValue($sql, ['%@example.com%']);
Basic Usage (Multiple Values)
$sql = 'SELECT username FROM test_users WHERE active = 1 ORDER BY id ASC';
$usernames = $db->rawQueryValue($sql);
Return Value
mixed
— Scalar value (ifLIMIT 1
)array
— Values from the first column (if multiple rows)null
— If no result or column was found
Note:
Otherwise, it returns an array of values from the first column of each row.
This mirrors the behavior of
rawQueryValue()
returns a single value only if your SQL query includes LIMIT 1
.Otherwise, it returns an array of values from the first column of each row.
This mirrors the behavior of
getValue()
based on the passed $limit
.
Notes
- The column key is determined automatically from the first row
- Query must be valid SQL and return at least one column
- This method does not support full row data — use
rawQueryOne()
for that