// DELETE FROM `users`
$rows_affected = db::delete('users')->execute(); // (int) 20
// DELETE FROM `users` WHERE `email` LIKE "%@example.com"
$rows_affected = db::delete('users')
->where('email', 'like', '%@example.com')
->execute(); // (int) 7
// SELECT * FROM `users` LEFT JOIN `roles` ON `roles`.`id` = `users`.`role_id`
db::select()
->from('users')
->join('roles','LEFT')
->on('roles.id', '=', 'users.role_id');
// SELECT * FROM `users` RIGHT OUTER JOIN `roles` ON `roles`.`id` = `users`.`role_id`
db::select()
->from('users')
->join('roles','right outer')
->on('roles.id', '=', 'users.role_id');
// SELECT * FROM `users` WHERE `id` = 1
$result = db::select()->from('users')->where('id', 1)->execute();
$result = db::select()->from('users')->where('id', '=', 1)->execute();
// SELECT * FROM `users` WHERE `id` != 1
$result = db::select()->from('users')->where('id', '!=', 1)->execute();
// SELECT * FROM `users` WHERE `delete_user` IS NOT NULL
$result = db::select()->from('users')->where('delete_user', '!=', NULL)->execute();
// SELECT * FROM `users` WHERE `name` LIKE "john%"
$result = db::select()->from('users')->where('name', 'like', 'john%')->execute();
// SELECT * FROM `users` WHERE `id` IN (1,2,3)
$id_array = array(1,2,3);
$result = db::select()
->from('users')
->where('id', 'in', $id_array)
->execute();
// SELECT * FROM `users` WHERE `id` BETWEEN 1 AND 2
$result = db::select()
->from('users')
->where('id', 'between', array(1,2))
->execute();
// SELECT * FROM `users` WHERE `name` LIKE "john%" AND `sex`='1'
// 数组方式
$where = array(
array('name', 'like', 'john%'),
array('sex', '=', 1)
);
$result = db::select()
->from('users')
->where($where)
->execute();
// 迭代方式
$where = array();
$query = db::select()
->from('users');
if ( !empty($keyword))
{
$query->where('name', 'like', "%{$keyword}%");
$query->where('enname', 'like', "%{$keyword}%");
}
$query->execute();
// SELECT * FROM `users` WHERE (`name` = 'John' AND `email` = '[email protected]')
// OR (`name` = 'mike' OR `name` = 'dirk')
$result = db::select()
->from('users')
->where_open()
->where('name', 'John')
->and_where('email', '[email protected]')
->where_close()
->or_where_open()
->where('name', 'mike')
->or_where('name', 'dirk')
->or_where_close()
->execute();
// SELECT * FROM `users` ORDER BY `name` ASC
db::select()
->from('users')
->order_by('name', 'asc');
// 迭代调用
// SELECT * FROM `users` PRDER BY `name` ASC, `surname` DESC
db::select()
->from('users')
->order_by('name', 'asc')
->order_by('surname', 'desc');
// SELECT * FROM `users` GROUP BY `age`
db::select()
->from('users')
->group_by('age');
// SELECT * FROM `users` GROUP BY `age`,`sex`
$group = array('age', 'sex');
db::select()
->from('users')
->group_by($group);