ThinkPHP 统计数据更新

ThinkPHP 内置了对统计数据(数字字段)的更新方法:

  1. setInc():将数字字段值增加
  2. setDec():将数字字段值减少

setInc()

ThinkPHP setInc() 方法将数字字段值增加。

例子:

public function update(){
header("Content-Type:text/html; charset=utf-8");
$Dao = M("User"); $result = $Dao->where('uid = 2')->setInc('score',3); if($result !== false){
echo '数据更新成功!';
}else{
echo '没更新任何数据!';
}
}

上面例子执行的 SQL 语句为:

UPDATE user SET score=score+3 WHERE uid = 2

setInc() 方法中最后一个参数为数字字段增加的值,如果省略则默认增加 1 。

setDec()

ThinkPHP setDec() 方法将数字字段值减少。

例子:

public function update(){
header("Content-Type:text/html; charset=utf-8");
$Dao = M("User"); $result = $Dao->where('uid = 2')->setDec('score',3); if($result !== false){
echo '数据更新成功!';
}else{
echo '没更新任何数据!';
}
}

上面例子执行的 SQL 语句为:

UPDATE user SET score=score-3 WHERE uid = 2

setDec() 方法中最后一个参数为数字字段减少的值,如果省略则默认减少 1 。

提示

在 ThinkPHP 3.0 版本中,setInc() 与 setDec() 方法取消了条件参数,因此必须配合 where 方法一起使用。setInc() 与 setDec() 方法也支持连贯操作,从而可以构造更加复杂的更新条件。

ThinkPHP 统计数据(数字字段)更新 setInc 与 setDec 方法的更多相关文章

  1. thinkphp中的setInc、setDec方法

    thinkphp中setInc.setDec方法 可用于统计字段(通常是数字类型的字段)的更新,例如积分,等级,登陆次数等 必须配合连贯操作where一起使用 $User = M("User ...

  2. thinkphp3.0增加setInc、setDec方法

    thinkphp3.0增加setInc.setDec方法 thinkphp3.0增加setInc.setDec方法,今天查看thinkphp2.0的方法setInc.setDec时是这样写的: 而对于 ...

  3. thinkphp中setInc、setDec方法

    可用于统计字段(通常是数字类型的字段)的更新,例如积分,等级,登陆次数等 必须配合连贯操作where一起使用   score 是数据库指定的某个字段 $User = M("User" ...

  4. mybatis返回map类型数据空值字段不显示的解决方法

    在日常开发中,查询数据返回类型为map,数据库中有些自动值为null,则返回的结果中没有值为空的字段,则如何显示值为空的字段呢? Spring boot + MyBatis返回map中null值默认不 ...

  5. ThinkPHP 模型方法 setInc() 和 setDec() 使用详解

    对于数字字段的加减,可以直接使用 setInc() 与 setDec() 方法 ThinkPHP 内置了对统计数据(数字字段)的更新方法: setInc():将数字字段值增加 setDec():将数字 ...

  6. 原子类型字段更新器AtomicXxxxFieldUpdater

    本博客系列是学习并发编程过程中的记录总结.由于文章比较多,写的时间也比较散,所以我整理了个目录贴(传送门),方便查阅. 并发编程系列博客传送门 原子类型字段更新器 在java.util.concurr ...

  7. SD从零开始67-70 后勤信息系统中的标准分析, 信息结构, 信息的更新规则, 建立统计数据

    SD从零开始67 后勤信息系统中的标准分析 标准分析中的报表Reporting in Standard Analyses 标准分析为高质量的表达和分析LIS中的数据基础提供了大量的功能: 当你决定了一 ...

  8. Oracle Sales Cloud:管理沙盒(定制化)小细节2——使用对象触发器更新数字字段

    在上一篇 "管理沙盒(定制化)小细节1" 的随笔中,我们使用公式法在 "业务机会" 对象(单头)上建立了 "利润合计" 字段,并将它等于 & ...

  9. mysql的if用法解决同一张数据表里面两个字段是否相等统计数据量。

    MySQL的使用用法如下所示:格式:if(Condition,A,B)意义:当Condition为true时,返回A:当Condition为false时,返回B.作用:作为条件语句使用.mysql的i ...

随机推荐

  1. 多用户ATM机(面向对象编程)

    let readline = require('readline-sync'); // 清屏函数 let clear = () => process.stdout.write(process.p ...

  2. Go语言资源教程:Redis介绍安装和使用

    Redis的操作和使用 在安装好redis以后,我们这里给大家讲一下redis操作的一些知识. Redis支持的数据类型:string,hash,list,set,sorted set 我们来练习一下 ...

  3. 青橙 A1280. 最长双回文串

    A1280. 最长双回文串 时间限制:2.0s   内存限制:512.0MB   总提交次数:   AC次数:   平均分:   将本题分享到:        查看未格式化的试题   提交   试题讨 ...

  4. 《图解HTTP》阅读笔记--第七章---确保WEB安全的HTTPS

    第七章.确保WEB安全的HTTPSHTTP的缺点:通信使用明文(不加密),内容可能会被窃听 解决---加密处理: //将通信加密 :通过SSL(安全套接层)---HTTPS(超文本传输安全协议)--- ...

  5. P1969 积木大赛

    题意:给你一段序列,一次操作:[l,r]内所有数+1 初始序列全为0 现在给你最后序列,问最少操作几次能达到这样的序列 蒟蒻表示秒想到------差分啊 每次差分必有一个+1,一个-1 把差分数组求出 ...

  6. c#静态变量赋值问题

    class Program { static int i = getNum(); int j = getNum(); ; static int getNum() { return num; } sta ...

  7. BestCoder Round #80 待填坑

    Lucky Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...

  8. mybatis主键返回语句 使用方法,就是实体类.getid即可拿到返回的id

    <insert id="insertSelective" parameterType="com.o2o.Content" useGeneratedKeys ...

  9. README.md使用

    1.标题: # 一级标题 ## 二级标题 ### 三级标题 2.换行: <br> 3.代码: ``` 代码在中间 ``` 4.表格: 表头 | 表头 | 表头 ---- | ----- | ...

  10. Qt 学习之路 2(11):布局管理器

    Home / Qt 学习之路 2 / Qt 学习之路 2(11):布局管理器 Qt 学习之路 2(11):布局管理器  豆子  2012年9月4日  Qt 学习之路 2  70条评论 所谓 GUI 界 ...