- 博客(40)
- 资源 (1)
- 收藏
- 关注
原创 in 和 inner join 的区别 join using 和join on 的区别
in 和 inner join 的区别 select a.* from a where a_id in (select b_id from b ) select a.* from a inner join b on a.a_id=b.b_id这两条语句的执行结果相同在执行上in 中的子查询如果包含 重复的 结果 会自动筛除 重复的结果 而 inner join 则不会
2017-02-22 10:41:20 8892
原创 mysql 使用 group by和 order by 时extra 的执行情况
CREATE TABLE `stu` ( `name` varchar(111) DEFAULT 'bb', `score` int(111) DEFAULT NULL, `class` varchar(11) DEFAULT NULL, KEY `class` (`class`)) ENGINE=MyISAM DEFAULT CHARSET=utf8e
2017-02-22 10:39:43 332
原创 thinkphp 引入第三方类库的方法
public function getdisanfang() { Vendor('testvendor.testvendornoclass'); $test=new \testvendornoclass(); echo $test->echotest(); }
2017-02-14 16:07:47 597
原创 MySQL中函数CONCAT&CONCAT_WS及GROUP_CONCAT
表结构CREATE TABLE `test3` ( `id` int(5) unsigned NOT NULL AUTO_INCREMENT, `name1` varchar(10) DEFAULT NULL, `name2` varchar(10) DEFAULT NULL, `cnt` int(2) DEFAULT NULL, PRIMARY KEY
2017-02-13 11:44:20 422
转载 mysql中的with rollup
表如下:CREATE TABLE `test3` ( `id` int(5) unsigned NOT NULL AUTO_INCREMENT, `name1` varchar(10) DEFAULT NULL, `name2` varchar(10) DEFAULT NULL, `cnt` int(2) DEFAULT NULL, PRIMARY KEY (`i
2017-02-13 10:40:40 366
原创 mysql 减少group by 的开销
group by 一般 和集合函数一起使用,使用情况最多的 是count(), 即将 数据按照一定条件分组,再统计每一组的总数, 显然这是非常消耗资源的一种做法. mysql 36军规里 表示尽量少使用 count(),也是这个原因. 如果想对多种条件进行 统计 ,可以使用 判断语句 如sum(if) sum(cses when then) 得到.虽然希望较少的使用 groupb
2017-02-10 17:40:33 479
原创 python 局部变量与全局变量
在函数内定义的变量 不能作用到 函数外部def combine():num=1return numprint (num)单是 函数外部的全局变量是可以作用到函数内部的def combine():return num*2num=1print (combine())如果函数 内定义的变量和函数外部定义的变量重名 可以使用globals()
2017-01-17 14:07:32 183
原创 php 类属性 和python 类属性的 区别
php 中类的属性 只能定义属性名称 以及访问控制(public....) 在属性为非static的情况下并不能给变量赋初始值.其一般会在 构造方法中做处理. 在属性为 static的情况 下 是可以赋初始值的 (应为静态属性在大概率下是 不会通过实例化类的情况下调取的, 如果强行使用 实例化类后用this->也可以强行 {不严谨 会提示notice}).如果不能赋初始值,意味着需要在调用
2017-01-11 19:09:52 254
原创 mysql 定时任务
SHOW VARIABLES LIKE 'event_scheduler'; 查看定时任务SET GLOBAL event_scheduler = ON; 开启定时任务createevent myeventON SCHEDULE AT TIMESTAMP '2012-07-18 00:00:00' | EVERY 1 DAY ON COMPLETION PRESERVE
2017-01-11 17:28:56 236
原创 关于mysql or 的 底层执行
一直 有一个 疑问 mysql 的 or 到底是怎么执行的例如 select * from user where createtime=1474253267 or name='zs' or class =123已知 表中存在 满足 createtime name class 其中一个的条件的数据有且只有一条 , 且同时满足其3个条件有疑问 mys
2016-12-12 19:45:35 977
原创 mysql in or union 和 unionall 的 浅析
1 in 和or 的 区别 在对where 条件 进行 限定是 都可以使用 in 和or 在 对通一 字段 进行 限定时 永远使用 in 原因如下in 和or 在 对 含有键的 列 进行 限定时 区别 不大 ,在对非键 列 进行 限定时 若 in 和 or 的 数量 较少时 也没有任何 区别 .但 在 面对 大量的 in 和 or 时候 in的效率不
2016-12-12 17:22:46 656
原创 php 引用符 取地址符号 在 遍历 使用时出现的结果与预期不符合的现象
$array1=array("name"=>"zs","sex"=>"1","age"=>"20");$array2=array("name"=>"li","sex"=>"0","age"=>"30");$array3=array("name"=>"ww","sex"=>"1","age"=>"40");$array4=array("name"=>"zl","sex"=>"0","ag
2016-11-25 14:15:11 426
原创 mysql 主键重排序
ALTER TABLE `table_name` DROP `id`;ALTER TABLE `table_name` ADD `id` int (11) NOT NULL first; //first 表示是将id 最为 第一列存放 ALTER TABLE `table_name` MODIFY COLUMN `id` int (11) NOT NUL
2016-11-18 14:09:07 348
转载 php __SET __GET
error_reporting(E_ALL);class stu{ private $a; private $b = 0; public $c; public $d = 0; //这里的 private 可以用 protected public 替代 private funct
2016-11-17 09:50:58 265
原创 php __call 和 __callStatic 的 触发时机
__call 和 __callStatic 在调用class 内部没有 或 无法使用的 函数时 会自动触发 . __call 会在 调用非静态方法时 触发 __callStatic 为静态方法.注意 这两个魔术方法 不但 不在 类中 没有 此 函数时 触发 ,也会在 无法调用函数的时候触发 . 例如 类中定义了 一个 protected 或private 方
2016-11-16 20:31:44 643
原创 php 关于 preg_match 正则匹配值的输出
$str= 'content112';preg_match("/content\d+/", $str, $matches);print_r($matches);输出Array ( [0] => content123 )想要使使用正则时作为匹配的值 不输出 即不输出content 可以使用以下$str= 'content112';preg_match("/co
2016-11-16 16:52:49 878
转载 python 添加删除元素
集合add方法:是把要传入的元素做为一个整个添加到集合中,例如:>>> a = set('boy')>>> a.add('python')>>> aset(['y', 'python', 'b', 'o'])集合update方法:是把要传入的元素拆分,做为个体传入到集合中,例如:>>> a = set('boy')>>> a.update('python')>>
2016-11-09 18:22:53 249
原创 array_merge 和 + 在和并数组时候的 相同和不同
array_merge 和 + 在合并数组的时候 部分情况有 相同效果 其条件是只有在 数组 $a 和数组$b 这两个数组 的键 都不相等的 情况下如果 出现了 $a 和$b 有相同的键的情况 ,那么后加入的数组 的值 将被抛弃 ,而不是 覆盖 如以下$a = array(0 => 'a', 1 => 'b'); $b = array(0 => 'c', 1
2016-11-07 19:59:30 461
原创 python 正则 ()的 作用 和 findall 和match 的区别 以及在php中同等功能的实现
string="aabc"print re.match(r"a(abc)",string).group(0)print re.match(r"a(abc)",string).group(1)print re.findall(r"a(abc)",string)返回值为aabcabc['abc']可见 re.findall(r"a(abc)",
2016-11-04 14:12:46 373
原创 python for 循环
for a in b 为 python for 循环的格式b为循环的对象, 对于不同的对象 a 所代表的意义不同1.如果b 为 列表或元祖a 所代表的 是每一次循环b中的一个值(假如把列表和元祖 理解成默认键 从0开始递增 的 数组 此时 b 可以理解成 一次循环中数组 键值对的 值)2.如果b 为字典 a 代表每一次循环中一个键值对的键
2016-11-02 17:13:00 368
原创 mysql 多种方式 获得 最大或者最小的一条数据
1 select * from user order by age limit 1;2 select * from user where id =(select id from user order by id limit 1);3 SELECT * FROM user WHERE age 第二种的适用场景为 当取出的值的 偏移量较大时 如 sele
2016-10-28 15:09:06 3143
原创 关于mysql 中的limit 偏移量较大时 的使用 建议
select * f rom table limit .. 偏移量较小的时候 使用 SELECT * from use order by id LIMIT 10,10 的时候有 优势 速度较快 , mysql 可以很快的从 结果 集中 筛选出 前面的 结果 返回..偏移量较大的 时候使用 SELECT * from user WHERE id>=(S
2016-10-28 13:40:23 1535
原创 mysql 单列索引 和 多列缩影
如从user 表中检索出 姓名为'张'年龄为20 性别为男 的 用户. 可以有一下几种思路,1.姓名 年龄,性别 其中一个 创建 索引 , mysql 通过索引 快速定位到符合 其中 一个条件的 数据 在 进行 筛选.2创建 联合(多列)索引 mysql 通过索引 定位到 符合 符合 其3个条件的 数据 并返回.3 为这3个字段分别创建单列索引. 但是 my
2016-10-27 16:18:52 437
原创 mysql % _ 和 ESCAPE
1% ,匹配人一个数 字符2_ 之匹配 一个字符3, ESCAPE 忽略前面所使用的 特殊字符 SELECT * FROM TBL WHERE COL LIKE 'ABC/%/_%' ESCAPE '/'; 详细 连接http://blog.csdn.net/chenjiayi_yun/article/details/43085579
2016-10-24 15:44:22 638
原创 laravel 对请求参数的判断 has 和exists
has 和exists 的区别 has 判断 是否存在此参数 其此参数不为空exists 只判断是否 存在此参数
2016-10-19 23:49:07 6496
原创 php 正则 数组替换数组
$string = 'The quick brown fox jumped over the lazy dog.';$patterns = array();$patterns[0] = '/quick/';$patterns[1] = '/brown/';$patterns[2] = '/fox/';$replacements = array();$replacements
2016-10-19 22:56:11 1465
原创 mysql数据库 多条件获得结果总跳数( count)
1. 使用 case when then SELECT mid, xingming, count(id),SUM( CASE WHEN `time` >0THEN 1 ELSE 0 END ) AS successFROM `tablei` where status=1当case 条件成立时 将其计为1 通过 sum 相加得到总数目获得 总条数
2016-10-19 22:50:13 303
原创 laraval 分析结果集 中的数据
是否包含 有某一个值 contains是否包含 有某一个键 has$arr=[1=>'a',2=>'b',3=>'c'];$collection=collect($arr);$res=$collection->contains('d');return $res?'you':'meiyou';
2016-10-19 22:15:22 376
原创 cmd 无法使用mysql
置好了环境变量以后,在启动命令窗口的时候有时需要以管理员身份运行,这样才能正常的使用MySQL数据库。一般是不需要的。
2016-10-17 15:21:12 359
原创 匿名函数的参数传入
$message = 'hello';$example = function() use ($message){ var_dump($message);};echo $example();//输出hello$message = 'world';//输出hello 因为继承变量的值的时候是函数定义的时候而不是 函数被调用的时候echo $example();
2016-10-11 19:43:03 2315
原创 array_map 和array_walk && array_filter区别
1传入参数 不同array_walk($array,$func_name); array_map($func_name,$array);2 返回值不同array_walk 返回 true false array_map 返回新数组3 array_walk 相当于 使用数组 向 函数出入参数 返回值是true ,falsearray_ma
2016-10-11 14:21:51 209
原创 call_user_func && call_user_func_array 调用内部定义的函数
function a($b,$c) { echo $b; echo $c; } call_user_func('a', "111","222");//当调用的是方法时 第一个参数填入 方法名称 即可class a { function b($c) { echo $c; } } call_user_func(array("a", "b")
2016-10-11 11:28:23 298
原创 mysql全文搜索match+against
1只能支持 英文搜索 不能支持中文 (中文请使用Sphinx(斯芬克斯)/Coreseek)2 基本语法 SELECT * FROM article WHERE MATCH(title, content) AGAINST('查询字符串')3这个是 分词搜索 被搜索的词 必须分开为一个单词 即 against('abc') 去搜素 'a abc aa' 是可以的 但是搜索 'a ab
2016-09-12 14:23:03 598
原创 关于mysql exists 的初步认识
EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或False。也就是说 SELECT * FROM table1 where EXISTS (select * from table2) 语句一定成功
2016-09-09 17:57:12 232
原创 关于php memcached的使用
memcached 搭建环境的几点关键1.下载memcached 2.php.ini 开启memcached服务3.可能有的集成环境没有memcache.dll 等扩展, 需要下载一个 适合版本的扩展4在进行 win 环境 安装时候 特别是win10 cmd 执行 memcached -d install 会报错 failed to install service or ser
2016-09-05 14:31:01 171
原创 关于后台返回json数据给前台
在后台中判断失败不要使用die ,exit 应为 die,exit 会带出 值 前台将视作 echo 了一段json 数据 出来 .而 应该直接 echo 一段 带error 的json 数据出来
2016-09-02 17:59:04 385
转载 php从memcache读取数据再批量写入mysql的方法
php从memcache读取数据再批量写入mysql的方法http://www.jb51.net/article/59147.htm
2016-09-02 10:33:54 301
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人