11月16日

第一次参加公司拓展
  昨天周六,公司组织员工拓展,早上7点公司集中,9点就开到了青浦淀山湖旁的一个拓展基地。
  活动场地是一块大草坪,所有人员分成6个小组PK。上午做了一个活动:翻牌,教练把26张牌放在距离起点5米远的草地上,一人只能翻一张牌,翻牌的顺序是从红1、黑1一直到红K、黑K,如果翻出来的不是目前需要的牌还要扣回去。看哪个小组先把牌翻完。
  中午吃完饭后,女同事去玩一些小游戏,男同事在做搭竹竿的游戏,游戏规则是:在两颗树之间系上一根绳子,作为障碍物,给了每个小组5根毛竹和绳子,需要在规定的时间内搭出一个架子可以让人翻越树上的绳子。并且毛竹和人都不能触碰到树上的绳子。
  最后一个项目是使用简单的乐曲,去奏一个乐章。通过拓展,加深了同事之间的沟通,了解同事在工作之外的其它方面,另外团队协作也受到了锻炼。
  公司提供早饭、中饭,拓展活动结束后还有点心提供,很用心。

SQL中and和or优先级

优先规则

求值顺序  
1 算术运算
2 连字操作
3 比较操作
4 IS [NOT] NULL, LIKE, [NOT] IN
5 [NOT] BETWEEN
6 NOT 逻辑条件
7 AND 逻辑条件
8 OR 逻辑条件

使用圆括号改变优先规则

如果不带括号,where条件中and和or共存时,会以or来分割

在emp表中查询,薪水大于1500,部门号为10或者奖金大于0的记录:

select * from emp where sal >1500 and deptno = 10 or comm > 0;

上面一句结果会和预期不符,因为or优先级比and低,所以where后的条件分为sal >1500 and deptno = 10(条件一)或者comm > 0(条件二)。

遇到这种情况需要加括号:

select * from emp where sal >1500 and (deptno = 10 or comm > 0);

参考资料:
http://blog.163.com/xiaosanshaoli@126/blog/static/2979216320093294392425/

PL/SQL基础学习笔记(2)-游标、存储过程、函数、触发器

–1、游标
–cursor游标,游标是指向一个select语句结果集的指针

declare
  cursor c
  is select * from emp;
  v_emp c%rowtype;
begin
  open c;
  fetch c into v_emp;
    dbms_output.put_line(v_emp.ename);
  close c;
end;
/


说明:
1)首先声明游标指向一个结果集。
2)定义变量v_emp是游标所指向的结果集的记录类型。
3)open c,打开游标,只有打开游标后,PL/SQL才会执行声明游标的select语句。
4)fatch c into v_emp,把当前游标指向的这条记录放在v_emp变量里面。
fatch执行后游标自动向下移动一行记录。指向下一条记录。
5)用完游标后要close。
继续阅读PL/SQL基础学习笔记(2)-游标、存储过程、函数、触发器

解决xp搜索只能搜注册的文件类型

引用自:
http://support2.microsoft.com/?id=309173

要将 Windows XP 配置为能够搜索所有文件(无论文件类型是什么),请获取最新的 Windows XP Service Pack,然后打开“含有未知扩展名的索引文件类型”选项。

如果您使用该方法,Windows XP 会在所有文件类型中搜索您指定的文本。这可能会影响搜索功能的性能。为此,请按照下列步骤操作:
1.单击“开始”,然后单击“搜索”(或指向“搜索”,然后单击“文件或文件夹”)。
2.单击“改变首选项”,然后单击“使用制作索引服务(使本地搜索更快)”。
3.单击“改变制作索引服务设置(高级)”。请注意,您不必打开索引服务。
4.在工具栏上,单击“显示/隐藏控制台树”。
5.在左窗格中,右键单击“本机索引服务”,然后单击“属性”。
6.在“生成”选项卡上,单击以选中“含有未知扩展名的索引文件”复选框,然后单击“确定”。
7.关闭索引服务控制台。

PL/SQL基础学习笔记

PL SQL是在oracle里面的编程语言,用来写存储过程、触发器、函数等等。
PL SQL语言是SQL的补充。SQL没有分支,没有循环,是第四代编程语言,非过程的,只要求得结果。

PL SQL写程序非常的固定:
[DECLARE]
–声明部分,可选。声明各种变量游标
BEGIN
–执行部分,必须。从这儿开始,程序开始执行
[EXCEPTION]
–异常处理部分,可选。相当于catch到exception时执行的东西
END;
–结束,end后要有分号

–最简单的语句块

begin
  dbms_output.put_line('Hello World!');
end;
/


说明:
1)必须先执行

set serveroutput on;

才能看到输出
2)“/”表示执行,相当于输入了run;
继续阅读PL/SQL基础学习笔记

oracle数据库对象-视图

视图是数据库里的一个对象。视图是一个子查询,或者说就是一张表。视图里的表是虚表。
视图名称一般以vi或v$开头。

–为test_t表创建视图

create view vi_test_t as select id AAAA, no BBBB, t_name CCCC, s_name DDDD, score EEEE from test_t where score > 60;

–查询视图

select * from vi_test_t;

AAAA BBBB CCCC DDDD EEEE
2 2 Mary 李四 99
3 3 Tom 王五 76

。。。以下记录省略
继续阅读oracle数据库对象-视图

SQL union学习

union和union all都是将多个查询的结果集合并到一张表里。union缺省在合并结果集后消除重复项,union all指定在合并结果集后保留重复项。
union默认用第一个字段进行排序,当然也可以在最后一个结果集里用order by子句排序。

把TEST_T表重新改一下:

drop table test_t;

CREATE TABLE
TEST_T
(
ID NUMBER,
NO NUMBER,
T_NAME VARCHAR2(50),
S_NAME VARCHAR2(50),
SCORE NUMBER
);

insert into TEST_T VALUES(1, 1, 'Peter', '张三', 60);
insert into TEST_T VALUES(2, 2, 'Mary', '李四', 99);
insert into TEST_T VALUES(3, 3, 'Tom', '王五', 76);

继续阅读SQL union学习

子查询学习(2)

exists和not exists关键字

exists操作符检查在子查询中是否存在满足条件的行。exists只返回true或false。

exists和关联子查询:
1、如果在子查询中存在满足条件的行:
如果能找到一行,对于这个子查询来说,不继续查找,exists返回true。
继续下一个子查询。

2、如果在子查询中不存在满足条件的行:
如果没有一行满足子查询条件,子查询的查询结果为空,exists返回false。
继续下一个子查询。

因为exists只返回true或false,所以在子查询中select后面只要写成select 1就行了。
继续阅读子查询学习(2)

子查询学习

子查询规则(初级):

子查询可以写在WHERE子句、HAVING子句、FROM子句中。
子查询分为多行子查询和单行子查询。

如果能够保证返回的行数小于等于1行的,则是单行子查询。
使用单行比较操作符:=、>、>=、<、<=、<>。
否则是多行子查询。
使用多行比较符:IN、> ANY 、> ALL、< ANY、< ALL。

下面我们测试下子查询的效果,还是用之前的TEST_T表。表结构在http://www.live-in.org/archives/2114.html

子查询一般情况下返回一个列的值(单列子查询),也可以返回多个列的值(多列子查询),但要成对匹配。
单列子查询可以在DECODE和CASE语句,还有SELECT中除GROUP BY子句以外的所有子句中使用。

多列子查询例子:

select t1.id 序号, t1.no 班级, t1.s_name 学生名字, t1.score 分数 from test_t t1 where (t1.id,t1.score) in (select t2.id, t2.score from test_t t2);

这里子查询返回两个列,但外层查询也要同时匹配这两个列。
继续阅读子查询学习

Linux rz和sz命令

rz,sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具。
优点就是不用再开一个sftp工具登录上去上传下载文件。

sz:将选定的文件发送(send)到本地机器
rz:运行该命令会弹出一个文件选择窗口,从本地选择文件上传到Linux服务器

安装命令:

yum install lrzsz

从服务端发送文件到客户端:

sz filename

从客户端上传文件到服务端:

rz

在弹出的框中选择文件,上传文件的用户和组是当前登录的用户

SecureCRT设置默认路径:
Options -> Session Options -> Terminal -> Xmodem/Zmodem ->Directories

Xshell设置默认路径:
右键会话 -> 属性 -> ZMODEM -> 接收文件夹

PS:同事和我说SecureCRT可以方便的上传下载文件,而Xshell没有。我上网一查原来用的是同一个sz/rz工具,Xshell下没有菜单选择要输命令。

软件及互联网爱好者