数据库语法

获取所有数据PHP

  1. self::$db->table('Persons')->where(['sex'=>'m','id'=>array(1,2,4)])->getAll();
  2. self::$db->table('Persons')->where(['sex'=>'m','id'=>array(1,2,4)],'efg,id')->getAll();
  3. self::$db->table('Persons')->where(" and sex='m'",'efg,id')->getAll();
  4. self::$db->table('Persons')->where(['id'=>7],'efg,sex')->orderBy('id', 'ASC')->getAll();
  5. self::$db->table('Persons')->pageAll(['id'=>'7'],'id','ASC');
  6. self::$db->getAll("SELECT efg,sex FROM ".self::$db->getTable('Persons')." where sex=7 ");

获取一行数据PHP

  1. self::$db->table('Persons')->where(['id'=>7])->getRow();
  2. self::$db->table('Persons')->where(['id'=>7],'*')->getRow();
  3. self::$db->table('Persons')->where(['id'=>7],'efg,sex')->getRow();
  4. self::$db->table('Persons')->where(" and id=7",'efg,sex')->getRow();
  5. self::$db->table('Persons')->where(['id'=>7],'efg,sex')->orderBy('sex', 'ASC')->getRow();
  6. self::$db->table('Persons')->first('id',7,'efg,sex');
  7. self::$db->getRow("SELECT efg,sex FROM ".self::$db->getTable('Persons')." where id=7 ");

获取一列数据PHP

  1. self::$db->table('Persons')->where(['id'=>7],'sex')->getOne();
  2. self::$db->table('Persons')->where(" and id=7",'sex')->getOne();
  3. self::$db->table('Persons')->where(['id'=>7],'sex')->orderBy('sex', 'ASC')->getOne();
  4. self::$db->getOne("SELECT sex FROM ".self::$db->getTable('Persons')." where id=7 ");

更新PHP

  1. $row_count = self::$db->table("Persons")->update(array('sex'=>'7'),'id=7');
  2. // 等价于
  3. $row_count = self::$db->query("UPDATE ".self::$db->backTable("Persons")." SET `sex` = 'F' WHERE id=7");

插入PHP

  1. $insert_id = self::$db->table('Persons')->insert(array('Firstname'=>'abc','Lastname'=>'efg','Sex'=>'M','Age'=>13));
  2. // 等价于
  3. $insert_id = self::$db->query("INSERT INTO ".self::$db->backTable("Persons")." ( `Firstname`,`Lastname`,`Sex`,`Age`) VALUES ( 'abc', 'efg', 'M', 13)");

删除PHP

  1. self::$db->table('Persons')->delete("name='{$name}'");
  2. // 等价于
  3. self::$db->query("DELETE FROM ".self::$db->backTable("Persons")." WHERE ID=9");

返回单列数组PHP

  1. self::$db->table('Persons')->where(['sex'=>'m'],'id')->getCol();
  2. // return array(1,2,3,4);
  3. self::$db->table('Persons')->where(['sex'=>'m'],'id')->getCol('','cc');
  4. // return array('1'=>'cc','2'=>'cc','3'=>'cc','4'=>'cc');
  5. self::$db->table('Persons')->where(['sex'=>7])->toArray('id');
  6. // return array(1,2,3,4);

复杂使用PHP

  1. // 获得所有数据
  2. self::$db->table('Persons')->where(['id'=>7],'efg,sex')->orderBy('id', 'ASC')->limit(8,15)->getAll();
  3. self::$db->table('Persons')->where(' and sex '.self::$db->db_create_in(['m','y']).' ','id')->getAll();
  4. self::$db->table('Persons')->left('a.id',"id,Lastname",'left join '.self::$db->backTable('admin').' as b on a.Lastname = b.Lastname ')->pageAll(['id'=>'7'],'id','ASC');
  5. // 数据表的总数
  6. self::$db->table('Persons')->total();
  7. // 等价于
  8. self::$db->getOne("SELECT count(*) FROM ".self::$db->getTable('Persons'));
  9. // 返回单列数组
  10. self::$db->table('Persons')->where(['sex'=>7],'id,sex')->getColumn('id');
  11. // return array('7'=>['id'=>7,'sex'=>'m'],'8'=>['id'=>8,'sex'=>'x']);
  12. self::$db->table('Persons')->where(['sex'=>7],'id,sex')->getColumnOne('id','sex');
  13. // return array('7'=>'m','8'=>'x');

分页使用PHP

  1. // 参数默认值
  2. $_REQUEST['limit'] = 10;
  3. $_REQUEST['page'] = 1;
  4. // 简单
  5. self::$db->table('Persons')->pageList(['sex'=>'m'],'id','desc');
  6. // 等价于
  7. $db->table('Persons ')->left('*',"*")->pageList("sex ='7'",'id','desc');
  8. // 常用
  9. $db->table('Persons ')->left('*',"id,Lastname")->pageList("sex ='7'",'id','desc');
  10. $db->table('Persons ')->left('*',"id,Lastname")->pageList(['sex'=>7],'id','desc');
  11. self::$db->pageSql("SELECT count(*) FROM ".self::$db->getTable('Persons')." where sex='m'","SELECT id,Lastname FROM ".self::$db->getTable('Persons')." where sex='m'");
  12. // 返回结果数据
  13. return array("info"=>array(
  14. array('id'=>1,'Lastname'=>'周'),
  15. array('id'=>2,'Lastname'=>'李'),
  16. ....
  17. ),
  18. 'filter'=>array('page'=>1,'count'=>20,'page_count'=>2,'limit'=>10)
  19. );
  20. // 复杂
  21. $db->table('Persons as a')->left('*',"id,Lastname",'left join '.self::$db->backTable('admin').' as b on a.name = b.name ')->pageList(['sex'=>7],'id','desc');
  22. $db->table('Persons as a')->left('*',"id,Lastname",'left join '.self::$db->backTable('admin').' as b on a.Lastname = b.Lastname ')->pageList('sex=7 GROUP BY a.Lastname','id','desc',true);