Navins' NoteBook Information, Share, Coding, Java/Python/PHP/C …

经典SQL行列转换

Posted on February 25, 2012    Stats: 246 views

-- 经典SQL行列转换

-- http://www.programbbs.com/doc/4885.htm
/*
标题:普通行列转换(version 2.0)
说明:普通行列转换(version 1.0)仅针对sql server 2000提供静态和动态写法,version 2.0增加sql server 2005的有关写法。
问题:假设有张学生成绩表(tb)如下:
姓名 课程 分数
张三 语文 74
张三 数学 83
张三 物理 93
李四 语文 74
李四 数学 84
李四 物理 94
想变成(得到如下结果):
姓名 语文 数学 物理
---- ---- ---- ----
李四 74 84 94
张三 74 83 93
-------------------
*/
 
Filed under: Share Continue reading

使用SELECT INTO 和 INSERT INTO SELECT导表中数据

Posted on February 25, 2012    Stats: 215 views

Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了。

1.INSERT INTO SELECT语句

语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1

要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。

 

2.SELECT INTO FROM语句

语句形式为:SELECT vale1, value2 into Table2 from Table1

要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中

Filed under: Labrary No Comments

mysql中int、bigint、smallint 和 tinyint的区别与长度

Posted on February 25, 2012    Stats: 750 views

各种整形,总结留作参考。

bigint

从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。

int

从 -2^31 (-2,147,483,648) 到 2^31 – 1 (2,147,483,647) 的整型数据(所有数字)。存储大小为 4 个字节。int 的 SQL-92 同义字为 integer

smallint

从 -2^15 (-32,768) 到 2^15 – 1 (32,767) 的整型数据。存储大小为 2 个字节。

tinyint

从 0 到 255 的整型数据。存储大小为 1 字节。

 

在支持整数值的地方支持 bigint 数据类型。但是,bigint 用于某些特殊的情况,当整数值超过 int 数据类型支持的范围时,就可以采用 bigint。在 SQL Server 中,int 数据类型是主要的整数数据类型。

在数据类型优先次序表中,bigint 位于 smallmoney 和 int 之间。

只有当参数表达式是 bigint 数据类型时,函数才返回 bigint。SQL Server 不会自动将其它整数数据类型(tinyintsmallint 和 int)提升为 bigint

int(M) 在 integer 数据类型中,M 表示最大显示宽度。在 int(M) 中,M 的值跟 int(M) 所占多少存储空间并无任何关系。和数字位数也无关系 int(3)、int(4)、int(8) 在磁盘上都是占用 4 btyes 的存储空间。

Filed under: Skills No Comments

《福布斯》:谷歌做硬件 不敌苹果的四大理由

Posted on February 13, 2012    Stats: 214 views

4点总结还是很到位的。摘录下来

2月13日消息,谷歌正在进军硬件产业。早些时候媒体报道称,谷歌正在测试一种新的神秘的家用产品。人们对此非常有兴趣,想知道这究竟是什么神秘产品。后经证实,谷歌是正在研发一种自有品牌的家庭娱乐设备。在过去几年里,Android团队一直致力于开发流媒体产品,旨在将谷歌音乐服务带入千家万户。

这对于搜索巨头谷歌而言是一种重大的方向性的变化。此前,谷歌已经通过推出Google+平台来改变人们与在线产品的交互方式,开辟了传统的搜索业务之外的社交平台业务。

现在,谷歌开始进入产品制造业务。有了Android操作系统,谷歌并未选择自己生产手机,而是决定走软件发展的路线,向制造商提供针对移动产品和平板电脑的开源系统平台。这招行之有效,尤其是现在采用Android系统的产品已经成为了Google+的重要门户。然而,与亚马逊和苹果这两家制造业的先驱竞争,对谷歌来说,制造业就是一场不易打胜的仗了。

谷歌在硬件产品制造领域难以与苹果匹敌,表现在如下几方面:

Filed under: News Continue reading

Session和Cookie关系

Posted on February 12, 2012    Stats: 159 views
网上看到,留作记录。

PHP中的session可以默认情况下是使用客户端的Cookie(以便和普通意义上的Cookie区别,我称之为session cookie,普通意义上的Cookie为Cookie)来保存session id的,但是PHP中的session是否只能使用session cookie呢?当然不是,否则何必还弄个session出来,不如直接用Cookie算了.Session的一大优点就是当客户端的Cookie被禁用时会自动把session id附在URL中,这样再通过session id就能记住session变量了. $ T5 I# S: c: W9 B. X7 T- b
下面我写两个文件来证实一下,首先在浏览器中设置禁用Cookie. * ], N/ Q1 _7 Z9 \) E& p' g
<? //文件名为test1.php
session_start(); 4 k! Z) o' q$ z) B- w/ o+ L! V
session_register("url");
$url="test2.php";
echo "<a href=$url>goto test2.php</a>
";
?>

Filed under: Share Continue reading

反作弊策略思想

Posted on February 11, 2012    Stats: 205 views

从网上看到,觉得归纳的亮点说着挺有道理。

这要从搜索引擎反作弊策略说起。一个搜索引擎成功的反作弊策略一定是这样的:

1,允许算法被探测出来,而且即使算法被公布,搜索结果的公正性都不会受太大影响。要这么做的原因就是不希望和作弊的人陷入到一种猫捉老鼠的死循环当中。如果老是以堵漏洞的做法来修正算法,那永远都没有尽头。出于这样的考虑,搜索引擎会把那些无法被作弊的的因素在排序算法里放到比较重要的程度。

2,尽可能用一切技术手段自动检测,当技术手段不能解决问题,就用人工来解决。然后把人工发现的问题又反馈给自动检测机制,使自动检测越来越完善。

现在的google基本上就是这样来做的。在现有的排序规则中,那些无法作弊的和能精确反应内容的因素,都是很重要的排序因素。

当然Google也不排斥频繁的调整算法,这也有出于给用户一个最好的搜索体验考虑的。

至于技术检测和人工审查,google也一直在做。

Filed under: Share Continue reading