我有两个SQL查询,第一个是:
select Activity, SUM(Amount) as "Total Amount 2009"
from Activities, Incomes
where Activities.UnitName = ? AND
Incomes.ActivityId = Activities.ActivityID
GROUP BY Activity
ORDER BY Activity;
Run Code Online (Sandbox Code Playgroud)
第二个是:
select Activity, SUM(Amount) as "Total Amount 2008"
from Activities, Incomes2008
where Activities.UnitName = ? AND
Incomes2008.ActivityId = Activities.ActivityID
GROUP BY Activity
ORDER BY Activity;
Run Code Online (Sandbox Code Playgroud)
(不要介意'?',它们代表birt中的参数).我想要实现的目标如下:我想要一个返回与第一个查询相同的SQL查询,但是有一个额外的(第三个)列,看起来与"Total Amount 2008"完全相同(来自第二个查询).
编写一个程序,该程序采用由空格分隔的3个整数,并执行加法,减法,乘法和除法运算的每一个组合,并使用所使用的运算组合显示结果.
例:
$./solution 1 2 3
结果如下输出
1+2+3 = 6
1-2-3 = -4
1*2*3 = 6
1/2/3 = 0 (仅整数答案,在.5处向上舍入)
1*2-3 = -1
3*1+2 = 5
等等...
操作规则的顺序适用,假设没有使用括号,即(3-1)*2 = 4不是组合,尽管你可以实现这个"额外信用"
对于除以0的结果,只需返回NaN
编辑:输入是必需的,即,如果输入是1 2 3,则3*1*2是有效组合.
我在教自己Clojure.
在非FP语言中,我可以很容易地编写嵌套if,如果我没有专门放置else,那么控制将只流出if块.例如:
Thing myfunc()
{
if(cond1)
{
if(cond2)
return something;
}
return somethingelse;
}
Run Code Online (Sandbox Code Playgroud)
但是,在Clojure中,没有返回语句(我知道),所以如果我写:
(defn myfunc []
(if (cond1)
(if (cond2) something))
somethingelse)
Run Code Online (Sandbox Code Playgroud)
那么"某事"就没有"回归"了.它似乎只是说,好吧,这里我们有一个值,现在让我们继续执行.显而易见的解决方案是结合条件,即:
(if (and (cond1) (cond2))
something
somethingelse)
Run Code Online (Sandbox Code Playgroud)
但是对于大的条件,这会变得笨拙/丑陋.此外,还需要额外的finagling来向cond1的"else"部分添加一个语句.这有什么优雅的解决方案吗?
在Emacs中,C-u C-SPC将"跳到标记处,并从当地标记环上弹出的位置设置标记".有没有办法在标记环周围走相反的方向?假设您已多次键入Cu C-SPC并想要回到您所看到的标记,而不是一直绕着环.
从下面的链接中,我知道Java (hash & 0x7FFFFFFF) % tab.length用来决定将数组放入{key,value}的数组中的哪个插槽.
我的问题是为什么Java首先执行hash&0x7FFFFFFF?有什么特别的目的吗?
如何获取命令行参数(特别是在GNU中,如果有任何差异)Common Lisp?
我在文件中定义了一个Point对象,Point.pm如下所示:
package Point;
sub new {
my ($class) = @_;
my $self = {
_x => 0,
_y => 0,
};
return bless $self => $class;
}
sub X {
my ($self, $x) = @_;
$self->{_x} = $x if defined $x;
return $self->{_x};
}
sub Y {
my ($self, $y) = @_;
$self->{_y} = $y if defined $y;
return $self->{_y};
}
1;
Run Code Online (Sandbox Code Playgroud)
现在,当我使用JSON通过以下代码将对象转换为JSON时:
use JSON;
use Point;
Point $p = new Point;
$p->X(20);
$p->Y(30);
my $json …Run Code Online (Sandbox Code Playgroud) 我想知道在使用某个文件中的函数时是否有任何方法可以停止程序.理想情况下,我正在寻找的是:
GDB Stop when use a function from file foo.cpp
Run Code Online (Sandbox Code Playgroud)
这样做的原因是因为我正在调试一个不是我的代码而且我不确切地知道调用了哪些函数以及哪些函数不是.GDB中是否有功能可以执行我要查找的内容,或者其他任何推荐的方法来执行类似的操作?
谢谢