说明:一般我们使用MYSQL插入记录时,类似于这样的语句: insert into table_name(email,phone,user_id) values(‘test9@163.com’,’99999′,’9999′) , 但是有时候我们可能还有这样的需求:判断数据是否存在, 如果不存在,则插入,.如果存在,则更新(或者不做任何操作). 方案一:REPLACE语法 replace的语法格式为: 1. replace into table_name(col_name, …) values(……
这是我的代码: 前提是做了一个view:att_sumbase 首先分开统计每天的中午.下午饭点人数,这时需要分别去除中午和下午重复打卡的人.用了记录集的交,嵌套select的知识. 注意不能直接使用union,这里只能使用union all,因为union会去掉重复记录,一个员工上午吃了,下午也吃了,union只会算一条,而union则能看出一共吃了两次. //求出分组统计 $att = $result->execute("select userid ,count(userid) as…
生成1-33中的6个随机数,无重复 ------------------------------------------------------------------------   方法1.每生成一个随机数,便于前面的所有随机数进行比较,如果有重复,则舍去不要,重新选取. 但该方法十分费时,并且在数据量巨大的并且有一定限制的时候,会引发巨大问题. 例如要生成10000个随机数,范围是0-9999,且不能重复,那么最后几个随机数有可能需要相当长的时间才能筛选出来. 方法2. 下面我们从另外一个…
Set 集合,不同于 Array,是一种没有重复值的集合. 以下代码出自于<JavaScript 权威指南(第六版)>P217,注意:这里并不是指 es6 / es2015 中的 Set 集合.它只是提供了一种实现类的例子,因为代码写得很巧妙,我就想记录下来并分享给大家. // 定义一个 Set 构造函数 function Set() { this.values = {}; // values 以键值对的形式表示集合的数据 this.n = 0; // n 集合中值的个数 // argumen…
mysql 中可以用一个sql命令实现在插入时,如果发现唯一索引重复的记录则自动改为更新语句, 语句如下: '; 注意,radcheck 表中 username 和 attribute 列是个组合的唯一索引. alter table radcheck add unique key(username,attribute);…
最近一直用ASP.NET MVC 4.0 +LINQ TO SQL来开发设计公司内部多个业务系统网站,在这其中发现了一些问题,也花了不少时间来查找相关资料或请教高人,最终都还算解决了,现在我将这些问题及对应的解决方案都整理汇总出来,供大家参供,有不对之处或有更好的解决办法,欢迎在本文评论,谢谢! [2014-12-2发布] 问题一:执行类似语句:dbDataContext.TableName.Join(modelList as List<实体对象类型>,t1=>t1.id,t2=>…
1.错误截图,有时候测试用例执行错误的话,相对于复杂的log,一张错误截图也许能更明确哪里出的问题(当然有时,截图+log还是最好了) 坑:本来是想测试用例fail的时候捕获异常来执行截图操作,但是由于使用了HTMLTestRunner来生成测试报告,执行截图操作之后,HTMLTestRunner就会把这个case当成是pass. 解决方案: try: # do something except: # do something raise 只要再加个raise就行了(之前的方案是每次都先截图,最…
create 语句后面的TYPE=MyISAM TYPE=MyISAM 和 ENGINE=MyISAM 都是设置数据库存储引擎的语句 ,(老版本的MySQL使用TYPE而不是ENGINE(例如,TYPE = MYISAM). MySQL 5.1为向下兼容而支持这个语法,但TYPE现在被轻视,而ENGINE是首先的用法. 一般地,ENGINE 选项是不必要的:除非默认已经被改变了,MyISAM是默认存储引擎. 所以直接将原来TYPE=MyISAM 改成ENGINE=MyISAM 就可以了…
1.  Syntax TIMESTAMPDIFF(unit,begin,end); 根据单位返回时间差,对于传入的begin和end不需要相同的数据结构,可以存在一个为Date一个DateTime 2. Unit 支持的单位有 MICROSECOND SECOND MINUTE HOUR DAY WEEK MONTH QUARTER YEAR 3. Example 下面这个例子是对于TIMESTAMPDIFF最基本的用法, 3.1 求 2017-01-01 - 2017-02-01 之间有几个月…
数据记录的增删改查 insert into `数据表名称` (`字段名称`, ...) values ('1', ...); delete from `数据表名称` where 子句; update `数据表名称` set (`字段名称`='1', ...) where 子句; select * from `数据表名称`; select (`字段名称`,...) from `数据表名称`; select `字段名称1`*`字段名称2` from `数据表名称`; select `字段名称1` a…