thingsolution / thingorm
PHP的ORM框架
dev-master
2017-06-30 09:41 UTC
Requires
- cinnamonlab/db: 1.0.0
- cinnamonlab/framework: dev-master
- phpunit/phpunit: 5.3.*
This package is not auto-updated.
Last update: 2024-09-23 07:27:52 UTC
README
这是一个小型的库,可以自动地将查询和映射结果构建到您的实体对象中。
1. 构建查询。
###1.1 构建选择查询
$query = MySqlQuery::select(['id','name','address'])
->from("user")
->rightJoin('user_info','user.id','=','user_info.user_id')
->where('id','>','3')
->whereIn('id',['2','3'])
->whereNotIn('id',['3','4'])
->whereNull('address')
->whereNotNull('name')
->whereBetween('name','4444','5555')
->whereNotBetween('name','6666','7777')
->groupBy('id')
->groupBy('name')
->having('id','>',30)
->having('id','>',30)
->orderBy('id','desc')
->limit(10)
->offset(20);
###1.2 构建更新查询
$query = MySqlQuery::update()->table("user")
->set(['id'=>'1','name'=>'22323'])
->innerJoin('user_info','user.id','=','user_info.user_id')
->where('name','=','sdsdsd')
->where('id','=','2222')
->orderBy('name','desc')
->limit(10);
###1.3 构建删除查询
$query = MySqlQuery::update()->delete()
->from('user')
->innerJoin('user_info','user_id','=','id')
->where('id','=','ssd')
->where('name','=','sdsds');
###1.4 构建插入查询
$query = MySqlQuery::insert()->into('user')
->values(['id'=>'sdsds','name'=>'sdsdsd','created_at'=>array('now()')])
->generateSQL();
###1.5 构建批量插入查询
$query = MySqlQuery::batchInsert()->into('user')
->values([
['name'=>'sdsds','address'=>'wewew','created_at'=>array('now()')],
['name'=>'asasa','address'=>'dfdfdf','created_at'=>array('now()')],
['name'=>'gggdg','address'=>'sddfsf','created_at'=>array('now()')]
])
##2. 在ThingORM中如何使用一些MySQL函数。例如,您想在插入查询中使用函数 now()
,只需使用这个函数通过 array(now())
如此使用即可
$query = MySqlQuery::insert()->into('user')
->values(['id'=>'sdsds','name'=>'sdsdsd','created_at'=>array('now()')])
->generateSQL();