小编Pio*_*ski的帖子

而不是独立地连接多个表,使用单独的查询?

我经常发现自己在桌子上进行了几次独立的连接.例如,假设我们有桌子collections,有独立的与两个一对N的关系photossongs,其中N是从零到很多.

现在,假设我们希望得到一个集合,这两个公司(独立)相关联的照片和歌曲.

我通常会使用这样的东西:

SELECT
    collections.collectionid as collectionid,
    photos.name as photo_name,
    songs.name  as song_name

FROM collections
    LEFT JOIN photos ON collections.collectionid = photos.collectionid
    LEFT JOIN songs  ON collections.collectionid = songs.collectionid

WHERE collections.collectionid = 14
Run Code Online (Sandbox Code Playgroud)

当然,将一个表左连接到另外两个表,如果第一个连接导致M行而第二个连接N成行,则给M * N出行.就数据库流量和性能而言,这似乎不是最理想的.

+--------------+------------+-----------+
| collectionid | photo_name | song_name |
+--------------+------------+-----------+
| 14           | 'x'        | 'a'       | \
| 14           | 'x'        | 'b'       |  - Each photo is …
Run Code Online (Sandbox Code Playgroud)

mysql sql join

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

SQL Server Profiler:在SSRS报告生成期间捕获对数据库的存储过程的调用

使用SQL Server/SSRS 2008.

使用SQL Server Profiler,我一直试图跟踪SSRS(rdl)报告生成调用到我的数据库的存储过程失败,即所以我可以看到传递了什么参数值等.

我应该寻找什么事件?

sql-server sql-server-profiler reporting-services

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

使用内联对象方法调用与声明新变量

我已经和Java和C#合作了一段时间了,我已经多次问自己这个问题,但是我找不到我想要的答案.

当我必须调用一个对象方法(这意味着它不是静态的)时,我必须通过类的实例来调用,例如:

MyClass myInstance = new MyClass();
myInstance.nonStaticMethod();
Run Code Online (Sandbox Code Playgroud)

我到处都看到这种代码,所以我在考虑一线调用(下面的例子)是否表现出不同的性能,或者仅仅是标准的缘故?

这就是我用单线呼叫的意思:

new MyClass().nonStaticMethod();
Run Code Online (Sandbox Code Playgroud)

c# java oop

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

ReSharper无法解析注释中的集合类型

如果集合的名称出现在由cref属性引用的方法描述中,则ReSharper无法解析该集合的名称.

例如,在这个签名中,ReSharper强调了这个词Dictionary:

/// <summary>
/// The reconstruct in single account.
/// </summary>
/// <param name="programId">
/// The program id.
/// </param>
/// <returns>
/// The <see cref="Dictionary"/>.   // <-- here the "Dictionary" is underlined
/// </returns>
Dictionary<long, Account> ReconstructInSingleAccount(long programId)
{

}
Run Code Online (Sandbox Code Playgroud)

当我将鼠标悬停在突出显示的区域时Cannot resolve symbol 'Dictionary'.该文件有一个引用System.Collections.Generic.同样的事情发生IEnumerableList.

它对代码没有任何影响,不会阻止编译或任何东西.我仍然希望保持我的文件清理,我不认为ReSharper首先应该在注释中解析名称时遇到问题.

我正在使用ReSharper 8.0.任何建议如何解决这个或如何更改我的意见,以摆脱这个"未解决"的警告高度赞赏.

c# resharper

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

如何在Dictionary <string,List <string [] >>()对象中检查字符串值?

为了简单起见,我有以下字典,我为每个字符串键填充了未知数量的字符串.我还有以下字符串列表.

var dict = new Dictionary<string, List<string[]>>();
IList<string> headerList = new List<string>();
Run Code Online (Sandbox Code Playgroud)

如何检查列表中的字符串是否是字典中的值?我的数据看起来与此类似:

 Key           Value
 -----         ------------------
 Car           honda, volks, benz
 Truck         chevy, ford
Run Code Online (Sandbox Code Playgroud)

我需要检查"honda"是否包含在字典值中.我想我需要做类似以下的事情来查看值是否包含列表,其中包含有问题的字符串.请记住,我对C#还不熟悉.

    foreach (string header in headerList)
    {
        // This is wrong, I don't know what to put in the if statement 
        if (dict.ContainsValue(r => r.Contains(header)))
        {
            // do stuff 
        }
    }
Run Code Online (Sandbox Code Playgroud)

c# dictionary

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

F#有办法打印表达式的类型吗?

我正在寻找道德等同于ghci:

Prelude> :t 1 + 2
1 + 2 :: Num a => a
Run Code Online (Sandbox Code Playgroud)

f#

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

HttpClient 响应 ReadAsAsync() 未完全反序列化对象

我正在尝试使用 Web API 客户端库使用 Web 服务。我的问题是,当提交函数使用 POST 方法时,ReadAsAsync 似乎不想完全取消返回的对象。

如果我将响应作为字符串并手动 deserailize 它工作。(我收到一个 apmsgMessage,其中填充了所有字段)

HttpClient client = GetClient();
var response = client.PostAsJsonAsync("api/robot/Preview", ad).Result;
var msg = response.Content.ReadAsStringAsync();
return JsonConvert.DeserializeObject<apmsgMessage>(msg.Result);
Run Code Online (Sandbox Code Playgroud)

我最初尝试了下面的代码,它返回一个 apmsgMessage 对象,但所有字段都为空。

HttpClient client = GetClient();
var response = client.PostAsJsonAsync("api/robot/Preview", ad).Result;
var msg = response.Content.ReadAsAsync<apmsgMessage>().Result;
return msg;
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么我的原始(PostAsJsonAsync)不返回完全填充的 apmsgMessage。我在 ReadAsAsync 上做错了什么吗?

c#-4.0 asp.net-web-api

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

在DB或SSRS中计算列的最佳方法

当我们在数据库中有一些计算列用于报告时,这是在SSRS报告开发的情况下计算它的值的最佳方法.

  1. 在SSRS tablix中计算它
  2. 从数据库计算并返回数据集

如果我复制这个问题,那么对不起,但谷歌搜索时没有得到正确答案.

t-sql sql-server-2008 reporting-services ssrs-2008

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

Trait`Cobodable`是私人的

我有问题使我的通用InMemoryColumn<T>序列化.它抱怨'Encodable'和'Decodable'特性是私密的,但我认为它在这里是公开的.我如何实现这些特征,以便我可以编码和解码底层Vec<T>.

这是导入的代码:

extern crate bincode;
extern crate libc;
extern crate "rustc-serialize" as rustc_serialize;

use rustc_serialize::serialize::{Encodable,Decodable};
//import other libs

pub struct InMemoryColumn<T> {
    name: String,
    data: Vec<T>,
}

impl<T: Eq + Ord + Hash + Encodable + Decodable> InMemoryColumn<T> {
    fn save(&self, tbl_name: &str) {
        //encode self.data and write to disk 
    }

    fn load(path: &str, name: &str) -> Result<InMemoryColumn<T>,String> {
        //decode from disk and populate InMemoryColumn<T>
    }
}
Run Code Online (Sandbox Code Playgroud)

rust

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

当源包含unicode字符时,Swift正则表达式匹配失败

我正在尝试使用NSRegularExpression进行简单的正则表达式匹配,但是当源包含多字节字符时,我遇到了一些匹配字符串的问题:

let string = "D 9"

// The following matches (any characters)(SPACE)(numbers)(any characters)
let pattern = "([\\s\\S]*) ([0-9]*)(.*)"

let slen : Int = string.lengthOfBytesUsingEncoding(NSUTF8StringEncoding)

var error: NSError? = nil

var regex = NSRegularExpression(pattern: pattern, options: NSRegularExpressionOptions.DotMatchesLineSeparators, error: &error)

var result = regex?.stringByReplacingMatchesInString(string, options: nil, range: NSRange(location:0,
length:slen), withTemplate: "First \"$1\" Second: \"$2\"")
Run Code Online (Sandbox Code Playgroud)

上面的代码按预期返回"D"和"9"

如果我现在更改第一行以包含英国"英镑"货币符号,如下所示:

let string = "£ 9"
Run Code Online (Sandbox Code Playgroud)

然后匹配不起作用,即使([\\s\\S]*)表达式的部分仍然匹配任何前导字符.

我知道£符号将占用两个字节,但通配符前导匹配应该忽略那些不应该吗?

有人能解释一下这里发生了什么吗?

regex nsregularexpression swift xcode6

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