问题列表 - 第46612页

MySQL"IN"查询子查询非常慢,但显式值快

我有一个MySQL查询(Ubu 10.04,Innodb,Core i7,16Gb RAM,SSD驱动器,MySQL params优化):

SELECT
COUNT(DISTINCT subscriberid)
FROM
em_link_data
WHERE
linkid in (SELECT l.id FROM em_link l WHERE l.campaignid = '2900' AND l.link != 'open')
Run Code Online (Sandbox Code Playgroud)

表em_link_data有大约7百万行,em_link有几千行.此查询大约需要18秒才能完成.但是,如果我替换子查询的结果并执行此操作:

SELECT
COUNT(DISTINCT subscriberid)
FROM
em_link_data
WHERE
linkid in (24899,24900,24901,24902);
Run Code Online (Sandbox Code Playgroud)

那么查询将在不到1毫秒的时间内运行.子查询单独运行不到1毫秒,列linkid被索引.

如果我将查询重写为连接,也不到1毫秒.为什么"IN"查询的子查询速度如此之慢以及为什么这么快的值?我无法重写查询(购买软件)所以我希望有一些调整或提示来加速这个查询!任何帮助表示赞赏.

mysql query-optimization

20
推荐指数
3
解决办法
2万
查看次数

在Matlab中创建具有相同比例的多个箱图

我想在Matlab中绘制几个不同的boxplot,但给它们相同的比例,以便读者不会因并排比较而被误导.

我尝试过使用datalim选项,但它只对boxplot施加了一个上限,但是如果数据没有达到它则不会拉伸它.

有任何想法吗?

matlab boxplot

7
推荐指数
1
解决办法
1634
查看次数

Crystal Reports - 向"命令"查询添加参数

Crystal版本 - Crystal Reports 2008 Business Objects - XI

我编写了一个查询来填充子报表,并希望根据用户的输入将参数提取到该查询.我的问题是,我需要在'Where'子句的第一行接受参数的正确语法是什么?

这是我在Crystal Reports中使用的查询:

Select 
Projecttname,
ReleaseDate,
TaskName

From DB_Table

Where
(Project_Name like {?Pm-?Proj_Name})) and 
(ReleaseDate) >= currentdate
Run Code Online (Sandbox Code Playgroud)

crystal-reports

6
推荐指数
2
解决办法
12万
查看次数

Ninject和OnePerRequestModule

我最近尝试了NinjectNinject.Web.Mvc扩展,我已经发现了一些奇特的和,而不是突破,令人目不暇接.

NinjectHttpApplication抽象类中,有一个构造函数定义如下..

    /// <summary>
    /// Initializes a new instance of the <see cref="NinjectHttpApplication"/> class.
    /// </summary>
    protected NinjectHttpApplication()
    {
        this.onePerRequestModule = new OnePerRequestModule();
        this.onePerRequestModule.Init(this);
    }
Run Code Online (Sandbox Code Playgroud)

我在这里放置了一个调试器断点,这会被调用几次.我找不到任何真实的文档.在实现代码中,有这条线引起了我的注意.

            if (kernel.Settings.Get("ReleaseScopeAtRequestEnd", true))
            {
                OnePerRequestModule.StartManaging(kernel);
            }
Run Code Online (Sandbox Code Playgroud)

我的问题如下......

  • 什么是 OnePerRequestModule
  • 为什么多次调用此构造函数?
  • StartManaging如果构造函数被多次调用,那么此方法的目的是什么?

ninject ninject-extensions asp.net-mvc-3

12
推荐指数
1
解决办法
2981
查看次数

需要适用于VC6的Platform SDK

有谁知道我可以在哪里下载最后一个Platform SDK来使用VC6?我可以通过谷歌搜索找到的链接似乎已经死了.

visual-c++-6 platform-sdk

8
推荐指数
1
解决办法
5580
查看次数

使用Jackson将JSON字符串转换为Java映射时出错

我有这段小代码,我正在尝试将JSON字符串转换为地图.

String json = "[{'code':':)','img':'<img src=/faccine/sorriso.gif>'}]";
ObjectMapper mapper = new ObjectMapper();
Map<String,String> userData = mapper.readValue(json,new TypeReference<HashMap<String,String>>() { });
Run Code Online (Sandbox Code Playgroud)

但它返回以下错误:

org.codehaus.jackson.map.JsonMappingException: Can not deserialize instance of java.util.HashMap out of START_ARRAY token
 at [Source: java.io.StringReader@1b1756a4; line: 1, column: 1]
    at org.codehaus.jackson.map.JsonMappingException.from(JsonMappingException.java:163)
    at org.codehaus.jackson.map.deser.StdDeserializationContext.mappingException(StdDeserializationContext.java:198)
    at org.codehaus.jackson.map.deser.MapDeserializer.deserialize(MapDeserializer.java:151)
    at org.codehaus.jackson.map.deser.MapDeserializer.deserialize(MapDeserializer.java:25)
    at org.codehaus.jackson.map.ObjectMapper._readMapAndClose(ObjectMapper.java:2131)
    at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1402)
    at CodeSnippet_19.run(CodeSnippet_19.java:13)
    at org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain1.eval(ScrapbookMain1.java:20)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.evalLoop(ScrapbookMain.java:54)
    at org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.main(ScrapbookMain.java:35)
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

java json dictionary hashmap jackson

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

在rails3中制作简报的最佳方式是什么?

有没有宝石可以做到这一点,如果没有,最好的方法是什么.我假设我将电子邮件存储在时事通讯数据库中,并且需要一个可以同时通过电子邮件发送给所有人的表单.谢谢!

ruby-on-rails ruby-on-rails-3

7
推荐指数
1
解决办法
4261
查看次数

测试使用CanCan和Devise与RSpec的视图

我试图测试一个简单的索引视图,其中包含以下代码:

- if can? :destroy, MyModel
  %th Options
Run Code Online (Sandbox Code Playgroud)

MyModelsController 有以下选项(继承资源+ CanCan + Devise):

class MyModelsController < ApplicationController
  inherit_resources
  nested_belongs_to :mymodel
  before_filter :authenticate_user!
  load_and_authorize_resource :project
  load_and_authorize_resource :mymodel, :through => :project
Run Code Online (Sandbox Code Playgroud)

运行规格时,它会在该行崩溃 - if can? :destroy, MyModel

Failure/Error: render
   ActionView::Template::Error:
      undefined method `authenticate' for nil:NilClass
Run Code Online (Sandbox Code Playgroud)

没有追溯,没有任何依据......

我想也许在测试视图时我没有被授权和签名,但是Devise::TestHelpers应该只包含在控制器测试中(这就是我的方法).

我试图覆盖方法可以吗?在两者Ability和控制器中,但没有产生任何影响.

ruby rspec ruby-on-rails devise cancan

20
推荐指数
3
解决办法
7581
查看次数

在同一进程中加载​​同一DLL的2个版本

我想完全按照这里描述的那样做,但是接受的解决方案对我不起作用.我想这里解释的原因是:

如果通过指定完整路径来加载具有依赖项的DLL,则系统将搜索DLL的相关DLL,就好像它们仅使用其模块名称一样加载.

如果已在内存中加载具有相同模块名称的DLL,则系统会在解析到加载的DLL之前仅检查重定向和清单,无论它在哪个目录中.系统不会搜索DLL.

我希望我的应用程序在以下结构中.

c:\Exe
 |
 |----- c:\DLL\DLL.dll, c:\DLL\common.dll 
 |
 |----- c:\DLL2\DLL2.dll, c:\DLL2\common.dll
Run Code Online (Sandbox Code Playgroud)

我的EXE将加载DLL

LoadLibrary("c:\\DLL\\DLL.dll");
LoadLibraryEx("c:\\DLL2\\DLL2.dll");
Run Code Online (Sandbox Code Playgroud)

在两种情况下都隐式加载common.

我尝试了SetDllDirectory选项,但总是只加载了一个common.dll.

我在common.dll中添加了版本信息.c:\ DLL\common.dll的版本为2.0.1.0,而c:\ DLL2\DLL2.dll的版本为4.0.1.0

我使用相应的版本信息嵌入了以下清单,但它没有帮助.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="common" version="4.0.1.0" processorArchitecture="x86"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
</assembly>
Run Code Online (Sandbox Code Playgroud)

有这个问题的解决方案吗?

c++ dll windows-xp visual-c++

8
推荐指数
1
解决办法
3812
查看次数

Linq - SelectMany Confusion

根据我从SelectMany的文档中理解,可以使用它来生成1-many关系的(扁平化)序列.

我有以下课程

  public class Customer
  {
    public int Id { get; set; }
    public string Name { get; set; }
  }

  class Order
  {
    public int Id { get; set; }
    public int CustomerId { get; set; }
    public string Description { get; set; }
  }
Run Code Online (Sandbox Code Playgroud)

然后我尝试使用查询表达式语法来使用它们

  var customers = new Customer[]
  {
    new Customer() { Id=1, Name ="A"},
    new Customer() { Id=2, Name ="B"},
    new Customer() { Id=3, Name ="C"}
  };

  var orders = new Order[]
  {
    new Order …
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-objects data-structures

81
推荐指数
3
解决办法
8万
查看次数