- 博客(24)
- 收藏
- 关注
原创 mysql 两表关联更新
使用场景:在进行两个表join关联查询时,此时我想把p表中的user_name赋值给a表中的user_name,直接执行SQL如下:UPDATE mz_insurance.mz_insurance_user pLEFT JOIN insurance.ins_user aON p.union_id = a.union_idSET a.user_n...
2018-08-10 21:51:20
19462
原创 Yii2 $form->field设置默认值
1.在利用Yii2组件进行创建记录的时候,加入此时我想在创建的时候给某个字段一个默认值,更新的时候该字段默认值取数据库的值,那么我们可以在该模型的 actionCreate 创建的方法新增一行//创建时候该字段有默认值$model->share_title='你的好友{nickname}邀请你学习{title}';2.在创建的时候 created_at 与 updated_at都...
2018-08-04 21:53:20
7206
原创 mysql 查询并删除重复的记录
1.查询重复的用户名记录select user_name,count(*) as count from user group by user_name having count>1;2.查找表中全部重复的记录Select * From 表 Where 重复字段 In (Select 重复字段 From 表 Group By 重复字段 Having Count(*)>1)...
2018-07-28 18:31:25
726
原创 mysql join 利用查询结果集进行关联
两种方式第一种 join左边是查询结果集 右边是单表进行关联,这是我们最常见的用法,基本上这种连接都能满足一般的查询需求。这里还要说明一下,LEFT JOIN是先连接,后过滤。也就是说,在WHERE条件过滤之前,已经进行了连接。SELECT S.STUDENT_NAME STUDENT_NAME, S.STUDENT_NO STUDENT_NO, F.ADDRESS ADDRESS...
2018-07-28 17:57:21
13556
原创 Yii2 GridView小部件的应用
显示图片案例这里只需要指定format格式为image即可,format第二个参数可设定图片大小,可参考下面的代码[ "label" => "头像", "format" => [ "image", [ "width"=>"84", "
2018-07-22 16:07:45
717
原创 Yii2关联查询
在Yii2中,我们可以使用Gii生成的模型去关联查询,下面记录一下1.如果我们在MzCaseGroupSearch方案表中通过userId去关联MzInsuranceUser用户表的信息,此时我们可以在MzCaseGroupSearch继承的MzCaseGroup表中建立一个方法:public function getMzInsuranceUser(){ return $thi...
2018-07-22 15:43:12
4580
原创 Linux 根据进程名杀死进程
ps -ef | grep procedure_name | grep -v grep | awk '{print $2}' | xargs kill -9
2018-04-05 16:39:46
1544
原创 MySQL调优sql语句三步曲
前言http://www.linuxidc.com/Linux/2012-09/70459.htmmysql profile explain slow_query_log分析优化查询在做性能测试中经常会遇到一些sql的么就是cpu高,所以对数据的优化在性能测试过程中占据着很重要的地方,下面我就介绍一些msyql性能调优过程中经常用到的三件利器:1、慢查询 (分析出现出问题的sql)2、Explai...
2018-03-05 15:04:27
261
原创 MySQL 索引的使用以及注意事项
前言查看索引查看表中已经存在 index:show index from table_name;创建和删除索引索引的创建可以在CREATE TABLE语句中进行,也可以单独用CREATE INDEX或ALTER TABLE来给表增加索引。删除索引可以利用ALTER TABLE或DROP INDEX语句来实现。(1)使用ALTER TABLE语句创建索引。语法如下:alter table table...
2018-03-05 14:59:39
816
原创 MySQL索引背后的数据结构及算法原理
定义MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构。我们知道,数据库查询是数据库的最主要功能之一。我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的角度进行优化。最基本的查询算法当然是顺序查找(linear search),这种复杂度为O(n)的算法在数据量很大时显然是糟糕的,好在计...
2018-03-05 14:57:35
200
原创 Innodb与MyIsam区别二
https://www.kancloud.cn/kancloud/theory-of-mysql-index/41846MyISAM引擎使用B+Tree作为索引结构,叶节点的data域存放的是数据记录的地址。下图是MyISAM索引的原理图:这里设表一共有三列,假设我们以Col1为主键,则上图是一个MyISAM表的主索引(Primary key)示意。可以看出MyISAM的索引文件仅仅保存数据记录的...
2018-03-05 14:46:05
276
原创 Innodb与MyIsam区别一
mysql支持的存储引擎:Innodb MyIsam NDB Memory Archive。存储文件1, 事务处理innodb 支持事务功能,myisam 不支持。Myisam 的执行速度更快,性能更好。MyISAM管理非事务表。它提供高速存储和检索,以及全文搜索能力。如果应用中需要执行大量的SELECT查询,那么MyISAM是更好的选择。 InnoDB用于事务处理应用程序,具有众...
2018-03-05 14:43:09
219
原创 对mysql乐观锁、悲观锁、共享锁、排它锁、行锁、表锁概念的理解
共享锁又称为读锁,简称S锁,顾名思义,共享锁就是多个事务对于同一数据可以共享一把锁,都能访问到数据,但是只能读不能修改。排他锁又称为写锁,简称X锁,顾名思义,排他锁就是不能与其他锁并存,如一个事务获取了一个数据行的排他锁,其他事务就不能再获取该行的其他锁,包括共享锁和排他锁,但是获取排他锁的事务是可以对数据就行读取和修改。对于共享锁大家可能很好理解,就是多个事务只能读数据不能改数据,对于排他锁大家...
2018-03-05 14:34:50
217
原创 MySQL 存储过程
存储过程定义我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制结构组成。当希望在不同的应用程序或平台上执行...
2018-03-05 14:13:53
208
原创 MySQL 事务介绍及原理
1 为什么要事务 事务是一组不可被分割执行的SQL语句集合,如果有必要,可以撤销。银行转账是经典的解释事务的例子。用户A给用户B转账5000元主要步骤可以概括为如下两步。 第一,账户A账户减去5000元; 第二,账户B账户增加5000元; 这两步要么成功,要么全不成功,否则都会导致数据不一致。这就可以用到事务来保证,如果是不同银行之间的转账还需要用到分布式事务。2 事务的性质 事务的机制...
2018-03-05 14:00:21
219
原创 MySQL 触发器
一,什么触发器触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发语法:触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约...
2018-03-05 13:51:46
398
原创 PHP 一次性群发模板消息
最近公众号的消息推送,由编辑模式过渡到了开发模式,把要推送模板消息的openid存入MySQL,尝试了两种群发模板消息的方法,其中有一种效率属实给力,大家可以看一下方案一 /** * 发送模板消息 方案一 */ public function actionTempletsend() { $TOKEN=$this->act
2018-01-24 16:25:17
3444
2
原创 PHP5.6 微信上传永久图片素材
由于PHP版本的问题 在公众号开发过程中上传图片老是失败,下面给大家提供一个PHP5.6以上的上传图片的例子 /** * 上传永久图片的接口------------------------------------------------------------------------ */ public function actionNewuplo
2018-01-02 12:29:49
2236
原创 MySQL主从复制的配置
技术背景在做web应用系统中,如果数据库出现了性能瓶颈,而你又是使用的MySQL数据库,那么就可以考虑采用数据库集群的方式来实现查询负载了。因为一般来讲一个系统中数据库的查询操作比更新操作要多的多,因此通过多台查询服务器将数据库的查询分担到不同的查询数据库从而提高数据库的查询效率。MySQL的主从同步是一个很成熟的架构,优点为:①在从服务器可以执行查询工作(即我们常
2017-12-28 11:52:34
1925
原创 Linux 执行定时任务 shell脚本
Linux上面执行定时任务,我们可以利用crontab -e直接编辑定时任务 另外我们还可以写好shell脚本,定时去执行shell脚本,这两个方法都可以起到定时执行的作用下面我详细说一下入如何执行shell脚本1.声明一下我安装的lnmp环境,shell脚本存放的位置在 /usr/local/sbin 路径下面
2017-12-26 11:08:32
35261
原创 PHP 模拟CURL分别GET POST进行HTTP请求
在调用接口的过程中 我们需要模拟浏览器请求,这个时候作为PHP开发者,我们可以利用CURL进行模拟HTTP请求1、curl以POST方式请求https协议接口 /** * 传入json数据进行HTTP POST请求 * * @param string $url $data_string * @return string */ publi
2017-12-15 13:30:25
7455
原创 利用PHPExcel实现数据的导入导出
PHPExcel 是用来操作Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言。可以使用它来读取、写入不同格式的电子表格。整体来说是一个不错的Excel操作类。首先利用该类我们可以实现两个功能1、将Excel里面的数据进行读取,导进MySQL2、我们把统计的数据信息导出到可以利用Excel表格
2017-12-14 11:05:19
662
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人