Differences between MySQL, PostgreSQL, and SQLite.
// JSON_EXTRACT
Db::jsonExtract('data', '$.name')
// JSON_CONTAINS
Db::jsonContains('tags', 'php')
// JSON_SET
Db::jsonSet('data', '$.status', 'active')// JSON extraction
Db::raw("data->>'name'")
// JSON contains
Db::raw("data @> '{\"tags\": [\"php\"]}'")
// JSON set
Db::raw("jsonb_set(data, '{status}', '\"active\"'::jsonb)")// JSON extraction
Db::raw("json_extract(data, '$.name')")
// JSON contains
Db::raw("json_extract(data, '$.tags') LIKE '%php%'")
// JSON set
Db::raw("json_set(data, '$.status', 'active')")// MySQL, PostgreSQL, SQLite
Db::substring('name', 1, 10)// MySQL
Db::concat('first', ' ', 'last')
// PostgreSQL
Db::raw("first || ' ' || last")
// SQLite
Db::raw("first || ' ' || last")// MySQL
Db::now() // NOW()
// PostgreSQL
Db::now() // NOW()
// SQLite
Db::now() // datetime('now')// MySQL
Db::addInterval('created_at', '1 DAY')
// PostgreSQL
Db::raw("created_at + INTERVAL '1 DAY'")
// SQLite
Db::raw("datetime(created_at, '+1 day')")SELECT * FROM `users`SELECT * FROM "users"SELECT * FROM "users"- API Reference - Complete API
- Dialect Support - Dialect handling
- Troubleshooting - Common issues