问题列表 - 第37151页

WHERE和JOIN操作顺序

我的问题类似于这个SQL操作顺序,但有一点点扭曲,所以我认为这是公平的.

我正在使用Teradata.我有2张桌子: table1, table2.

table1只有一id列.
table2有以下栏目:id,val

我可能错了,但我认为这两个陈述给出了相同的结果.

声明1.

SELECT table1.id, table2.val
FROM table1
INNER  JOIN table2
ON table1.id = table2.id
WHERE table2.val<100
Run Code Online (Sandbox Code Playgroud)

声明2.

SELECT table1.id, table3.val
FROM table1
INNER JOIN (
    SELECT *
    FROM table2
    WHERE val<100
)  table3
ON table1.id=table3.id
Run Code Online (Sandbox Code Playgroud)

我的问题是,查询优化器是否足够聪明
- 首先执行WHERE子句然后在语句1中稍后加入
- 知道语句2中实际上不需要表3

我对SQL很新,所以如果我误解了什么,请教育我.

sql teradata

13
推荐指数
1
解决办法
2万
查看次数

将方法的proc作为块提供

假设我有以下数组:

arr = [[5, 1], [2, 7]]
Run Code Online (Sandbox Code Playgroud)

我想找到最小元素,比较元素的第二个元素.最小元素将是[5, 1]因为1小于7.我可以使用以下代码:

arr.min {|a,b| a[1] <=> b[1]}
Run Code Online (Sandbox Code Playgroud)

为了计算最大值,我也可以这样做:

arr.max {|a,b| a[1] <=> b[1]}
Run Code Online (Sandbox Code Playgroud)

这给了[2, 7].

我一直使用相同的块.我想在某处拥有该块并将其提供给min/max函数.我希望这样的事情:

blo = lambda {|a,b| a[1] <=> b[1]}
arr.min blo
Run Code Online (Sandbox Code Playgroud)

会工作,但它没有.有关如何做到这一点的任何想法?

ruby codeblocks proc

11
推荐指数
2
解决办法
4793
查看次数

这是内存泄漏吗?

我有以下2个代码片段.假设我有一个Parent类,而且我有Parent.h类

@property (retain) NSMutableArray *childrens;
Run Code Online (Sandbox Code Playgroud)

我正确地在.m文件中合成它.在Parent.m文件中假设

- (无效)dealloc

{

 [childrens release];
 [super dealloc];
Run Code Online (Sandbox Code Playgroud)

}

在另一个课堂上,我这样宣布.

1.

Parent *p = [[Parent alloc] init];
p.chidlrens = [[NSMutableArray alloc] init];
// do some other stuff
Run Code Online (Sandbox Code Playgroud)

2.

Parent *p = [[Parent alloc] init];
NSMutableArray *childArray = [[NSMutableArray alloc] init];
p.childrens = childArray;
[childArray release];
Run Code Online (Sandbox Code Playgroud)

从上述2种方法中,方法1中是否存在泄漏?

iphone cocoa-touch objective-c

4
推荐指数
1
解决办法
512
查看次数

如何在CSS内容属性中使用html实体?

美好的一天,

今天早上我遇到了问题.我发现这个content属性很好,但我不能在其中使用HTML实体.

更具体地说,我想使用 &eacute;

这是我试过的:content: 'test with eacute \233';但结果是test with eacute ÿ

我也试过\0233,\0233c,\233c

我不想改变我的页面编码.

提前谢谢你们!

html css entities

5
推荐指数
1
解决办法
3791
查看次数

创建加热器应用程序

这可能看起来很奇怪,但我很有兴趣从我的电脑中创建一个电加热器,即程序应用程序,它可以加热我的电脑,我需要一些帮助.

我目前制作了一个应用程序,它在GPU上运行无限循环(使用一点着色器),并且在CPU内核上,但是我也很有兴趣让ram运行,以及几个输出端口,所以..关于ram加热,只需分配,并开始使用所有8个内核随机访问和写入?

那么触发CD-ROM,软盘等怎么样呢?我该怎么做?

cpu process overheating

4
推荐指数
1
解决办法
257
查看次数

如何使用Net :: Ping使用Perl单线程来ping主机?

尝试将以下Perl one-liner集成到shell脚本中.此代码在Perl脚本中工作,但不是作为从shell脚本执行的一行代码.

我试过用$host一个真正的主机名替换没有运气.

#!/bin/ksh

hosts="host1 host2 host3"

PERL=/usr/bin/perl

# Check to see if hosts are accessible.
for host in $hosts
do
   #echo $host
   $PERL -e 'use Net::Ping; $timeout=5; $p=Net::Ping->new("icmp", $timeout) or die bye ; print "$host is alive \n" if $p->ping($host); $p->close;'
done
Run Code Online (Sandbox Code Playgroud)

perl

5
推荐指数
2
解决办法
1万
查看次数

如何利用Sencha Touch框架中的"捏"触摸效果?

我正在试图弄清楚如何利用Sencha Touch的"捏"触摸效果.你知道任何有助于第一步的例子吗?

文档似乎相当沉默.

具体来说,我正在寻找一个共同的任务作为首发:

我想缩放它 - 并 - 缩小JPEG格式的图像.你知道"捏"方法是否允许这样做吗?

javascript user-interface extjs web-applications sencha-touch

5
推荐指数
1
解决办法
4790
查看次数

如何使用相对路径从共享库链接到共享库

我正在开发一个Firefox插件,它使用外部库在浏览器上渲染3D图形.

问题是我希望插件使用包含它的外部库而不更改LD_LIBRARY_PATH变量.
这些库安装在相对于插件的位置(也是共享库),而实际的可执行文件(即浏览器)可以完全位于其他地方.

你必须知道的一些事情.我在Ubuntu上测试它(在Windows版本的插件没有问题)我的依赖是OpenSceneGraph库和静态编译将使插件真的很大(如果有另一个,则不是一个选项)

希望你能帮我

最好的祝福.

linux linker gcc shared-libraries

21
推荐指数
2
解决办法
9264
查看次数

条件等待开销

使用或直接使用时boost::conditional_variable,是否存在等待的开销?这些是更具体的问题:ACE_Conditionalpthread_cond_wait

  1. 在等待线程未经调度之后,是否会在等待到期之前将其安排回来,然后再次进行计划,否则它将保持未计划直到发出信号?
  2. 是否wait定期获取互斥锁?在这种情况下,我猜想每次迭代浪费系统调用的一些CPU时间来锁定和释放互斥锁.它是否与不断获取和释放互斥锁相同?
  3. 那么,信号和返回之间经过了多长时间wait

Afaik,当使用信号量时,获取调用响应性取决于调度程序时间片大小.它是如何工作的pthread_cond_wait?我认为这是依赖于平台的.我对Linux更感兴趣,但如果有人知道它在其他平台上如何工作,它也会有所帮助.

还有一个问题:是否为每个条件分配了额外的系统资源?我不会在我的代码中创建30000个互斥锁,但是我应该担心30000个使用相同的互斥锁的条件吗?

c++ linux multithreading boost pthreads

4
推荐指数
1
解决办法
2134
查看次数

拆分gzip压缩日志文件而不将未压缩的拆分存储在磁盘上

我有一个经常性的任务,即将一组大的(每个大约1-2 GiB)gzip压缩的Apache日志文件拆分成几个部分(比如说500K行的块).应该再次压缩最终文件以限制磁盘使用量.

在Linux上我通常会这样做:

zcat biglogfile.gz | split -l500000
Run Code Online (Sandbox Code Playgroud)

生成的文件文件将命名为xaa,xab,xac等.所以我这样做:

gzip x*
Run Code Online (Sandbox Code Playgroud)

这种方法的效果是,作为中间结果,这些巨大的文件暂时存储在磁盘上.有没有办法避免这种中间磁盘使用?

我可以(以类似于xargs的方式)通过命令(如gzip)拆分输出并在运行中重新压缩输出吗?或者我是在寻找错误的方向,是否有更好的方法来做到这一点?

谢谢.

linux gzip split text-files

11
推荐指数
1
解决办法
7790
查看次数