原理 就是用SET变量进行. AND 就用变量叠加,OR就用0或1切换. nginx的配置中不支持if条件的逻辑与/逻辑或运算 ,并且不支持if的嵌套语法,我们可以用变量的方式来实现: 首先是伪代码(即不被nginx支持),写在这里只是为了方便理解: if ($remote_addr ~ "^(12.34|56.78)" && $http_user_agent ~* "spider") { return 403; } 这是等效的,并真实可用的配置 s…
Sql语句里的递归查询 SqlServer2005和Oracle 两个版本 以前使用Oracle,觉得它的递归查询很好用,就研究了一下SqlServer,发现它也支持在Sql里递归查询举例说明:SqlServer2005版本的Sql如下:比如一个表,有id和pId字段,id是主键,pid表示它的上级节点,表结构和数据:CREATE TABLE [aaa]( [id] [int] NULL, [pid] [int] NULL, [name] [nchar](10))GOINSERT INTO aa…
原文摘自:http://blog.csdn.net/pdn2000/article/details/6674243 Sql语句里的递归查询 SqlServer2005和Oracle 两个版本 以前使用Oracle,觉得它的递归查询很好用,就研究了一下SqlServer,发现它也支持在Sql里递归查询举例说明:SqlServer2005版本的Sql如下:比如一个表,有id和pId字段,id是主键,pid表示它的上级节点,表结构和数据:CREATE TABLE [aaa]( [id] [int] N…
今天友人和我讨论了一段代码,是HDU的OJ上一道题目的解,代码如下 #include<stdio.h> { int a,b; while(~scanf("%d%d",&a,&b)) { printf("%d\n",a+b); } ; } 起初,我以为代码中while语句里的按位取反运算符写错了,应该是逻辑非运算符. 这时我在Quora上找到了类似的问题,我对其中一篇答案做了修改和翻译: 查阅scanf函数的man手册,关于返回值的说明如下…
PL/SQL里的ROWTYPE类型具有非常大的用处和灵活性,现在发现ROWTYPE在insert和update语句里的妙用,可以节省很多代码,特别是在行copy和更新的时候. 在INSERT语句中: declare v_dept dept%rowtype; begin v_dept.deptno :; v_dept.dname := 'sample'; v_dept.loc := 'chicago'; insert into dept values v_dept; end; 在UPDATE语句中…
循环语句里的F4 深入了解下四个新语句,分别是:continue.break.pass.else以及他们搭配for.while循环等语句时,所产生的化学反应. else 由于continue.break都会和else有一定的规则,所以先来说else. 在python中,else不但可以和if配合使用,它还能跟for循环和while循环配合使用. 伪代码 else用在循环代码的后边,如果循环可以正常结束.即没有遇到break语句. 那么else里的代码块也会在循环结束后被正常执行. for...i…
需求:将emp表中工资大于一万的降到9成,工资少于一万的乘以1.2. 难点:如果分成两句update执行,在10000附近的值可能会执行两次. 钥匙:在update语句里采用case when,使更新仅仅执行一次. 代码展示: SQL> create table emp( 2 id number(4,0) primary key, 3 salary number(6,0) not null); 表已创建. SQL> insert into emp 2 select rownum,dbms_ra…
多重判断(if..else嵌套语句) 要在多组语句中选择一组来执行,使用if..else嵌套语句. 语法: if(条件1) { 条件1成立时执行的代码} else if(条件2) { 条件2成立时执行的代码} ... else if(条件n) { 条件n成立时执行的代码} else { 条件1.2至n不成立时执行的代码} 假设数学考试,小明考了86分,给他做个评价,60分以下的不及格,60(包含60分)-75分为良好,75(包含75分)-85分为很好,85(包含85分)-100优秀. 代码表示如…
一.if语句中的判断条件(nginx) 1.正则表达式匹配: ==:等值比较; ~:与指定正则表达式模式匹配时返回“真”,判断匹配与否时区分字符大小写: ~*:与指定正则表达式模式匹配时返回“真”,判断匹配与否时不区分字符大小写: !~:与指定正则表达式模式不匹配时返回“真”,判断匹配与否时区分字符大小写: !~*:与指定正则表达式模式不匹配时返回“真”,判断匹配与否时不区分字符大小写: 2.文件及目录匹配判断: -f, !-f:判断指定的路径是否为存在且为文件: -d, !-d:判断指定的路径…
以前使用Oracle,觉得它的递归查询很好用,就研究了一下SqlServer,发现它也支持在Sql里递归查询举例说明:SqlServer2005版本的Sql如下:比如一个表,有id和pId字段,id是主键,pid表示它的上级节点,表结构和数据:CREATE TABLE [aaa]( [id] [int] NULL, [pid] [int] NULL, [name] [nchar](10))GOINSERT INTO aaa VALUES(1,0,'a')INSERT INTO aaa VALUE…