前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Workerman中SQL语句的使用 转

Workerman中SQL语句的使用 转

作者头像
双面人
发布2019-04-10 16:35:16
1.8K0
发布2019-04-10 16:35:16
举报
文章被收录于专栏:热爱IT热爱IT
  1. // 初始化db连接
  2. $db = new Workerman\MySQL\Connection('host', 'port', 'user', 'password', 'db_name');
  3. // 获取所有数据
  4. $db->select('ID,Sex')->from('Persons')->where('sex= :sex AND ID = :id')->bindValues(array('sex'=>'M', 'id' => 1))->query();
  5. //等价于
  6. $db->select('ID,Sex')->from('Persons')->where("sex= 'M' AND ID = 1")->query();
  7. //等价于
  8. $db->query("SELECT ID,Sex FROM `Persons` WHERE sex='M' AND ID = 1");
  9. // 获取一行数据
  10. $db->select('ID,Sex')->from('Persons')->where('sex= :sex')->bindValues(array('sex'=>'M'))->row();
  11. //等价于
  12. $db->select('ID,Sex')->from('Persons')->where("sex= 'M' ")->row();
  13. //等价于
  14. $db->row("SELECT ID,Sex FROM `Persons` WHERE sex='M'");
  15. // 获取一列数据
  16. $db->select('ID')->from('Persons')->where('sex= :sex')->bindValues(array('sex'=>'M'))->column();
  17. //等价于
  18. $db->select('ID')->from('Persons')->where("sex= 'F' ")->column();
  19. //等价于
  20. $db->column("SELECT `ID` FROM `Persons` WHERE sex='M'");
  21. // 获取单个值
  22. $db->select('ID,Sex')->from('Persons')->where('sex= :sex')->bindValues(array('sex'=>'M'))->single();
  23. //等价于
  24. $db->select('ID,Sex')->from('Persons')->where("sex= 'F' ")->single();
  25. //等价于
  26. $db->single("SELECT ID,Sex FROM `Persons` WHERE sex='M'");
  27. // 复杂查询
  28. $db->select('*')->from('table1')->innerJoin('table2','table1.uid = table2.uid')->where('age > :age')->groupBy(array('aid'))->having('foo="foo"')->orderByASC/*orderByDESC*/(array('did'))
  29. ->limit(10)->offset(20)->bindValues(array('age' => 13));
  30. // 等价于
  31. $db->query(SELECT * FROM `table1` INNER JOIN `table2` ON `table1`.`uid` = `table2`.`uid`
  32. WHERE age > 13 GROUP BY aid HAVING foo="foo" ORDER BY did LIMIT 10 OFFSET 20“);
  33. // 插入
  34. $insert_id = $db->insert('Persons')->cols(array(
  35. 'Firstname'=>'abc',
  36. 'Lastname'=>'efg',
  37. 'Sex'=>'M',
  38. 'Age'=>13))->query();
  39. 等价于
  40. $insert_id = $db->query("INSERT INTO `Persons` ( `Firstname`,`Lastname`,`Sex`,`Age`)
  41. VALUES ( 'abc', 'efg', 'M', 13)");
  42. // 更新
  43. $row_count = $db->update('Persons')->cols(array('sex'))->where('ID=1')
  44. ->bindValue('sex', 'F')->query();
  45. // 等价于
  46. $row_count = $db->update('Persons')->cols(array('sex'=>'F'))->where('ID=1')->query();
  47. // 等价于
  48. $row_count = $db->query("UPDATE `Persons` SET `sex` = 'F' WHERE ID=1");
  49. // 删除
  50. $row_count = $db->delete('Persons')->where('ID=9')->query();
  51. // 等价于
  52. $row_count = $db->query("DELETE FROM `Persons` WHERE ID=9");
  53. // 事务
  54. $db->beginTrans();
  55. ....
  56. $db->commitTrans(); // or $db->rollBackTrans();

(adsbygoogle = window.adsbygoogle || []).push({});

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018/07/20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档