$sql1 = (string) DML::query()->select('name')->from('user')->where('id = 1');
$sql2 = (string) DML::query()->from('user')->where('id = 1')->select('name');
$sql3 = (string) DML::query()->where('id = 1')->select('name')->from('user');
$q = DML::query()
$q->from('user');
$q->where('id = 1');
$q->select('name');
$sql4 = (string) $q;As a result $sql1, $sql2, $sql3 and $sql4 contain same string:
SELECT name FROM users WHERE id = 1| Method | Parameters | Example | Resulting SQL |
|---|---|---|---|
| select | nothing, single, multiple | select() |
SELECT * |
| insert | single | insert('user') |
INSERT INTO user |
| update | single | update('user') |
UPDATE user |
| delete | nothing | delete() |
DELETE |
| from | single, subquery | from('user') |
FROM user |
| where | single | where('id = 1') |
WHERE id = 1 |
| whereNot | single | whereNot('id = 1') |
WHERE NOT id = 1 |
| whereAnd | multiple | whereAnd('id > 1', 'name = "John"') |
WHERE id > 1 AND name = "John" |
| whereOr | multiple | whereOr('id = 1', 'name = "John"') |
WHERE id = 1 OR name = "John" |
| join | single, three | join('order') |
INNER JOIN order |
| leftJoin | single, three | leftJoin('order') |
LEFT JOIN order |
| rightJoin | single, three | rightJoin('order') |
RIGHT JOIN order |
| on | single | on('user.id = order.user_id') |
ON user.id = order.user_id |
| and | single | and('id = 1') |
AND id = 1 |
| or | single | or('id = 1') |
OR id = 1 |
| groupBy | single | groupBy('is_active') |
GROUP BY is_active |
| having | single | having('COUNT(*) > 1') |
HAVING COUNT(*) > 1 |
| orderBy | single | orderBy('id') |
ORDER BY id |
| limit | single | limit(10) |
LIMIT 10 |
| set | two | set('is_active', 1) |
SET is_active = 1 |
| fields | multiple | fields(name, is_active) |
(name, is_active) |
| values | multiple | values('"John"', 1) |
VALUES ("John", 1) |