小编Dav*_*ave的帖子

SQL Left仅加入第一个匹配

我有一个针对大量连接的大表(行和列)的查询,但是其中一个表有一些重复的数据行导致我的查询出现问题.由于这是来自其他部门的只读实时订阅源,因此我无法修复该数据,但我正在尝试阻止查询中的问题.

鉴于此,我需要将此垃圾数据作为左连接添加到我的好查询中.数据集如下所示:

IDNo    FirstName   LastName    ...
-------------------------------------------
uqx     bob     smith
abc     john        willis
ABC     john        willis
aBc     john        willis
WTF     jeff        bridges
sss     bill        doe
ere     sally       abby
wtf     jeff        bridges
...
Run Code Online (Sandbox Code Playgroud)

(约24列,100K行)

我的第一直觉是执行一个明显的给了我大约80K行:

SELECT DISTINCT P.IDNo
FROM people P
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试以下操作时,我会收到所有行:

SELECT DISTINCT P.*
FROM people P
Run Code Online (Sandbox Code Playgroud)

要么

SELECT 
    DISTINCT(P.IDNo) AS IDNoUnq 
    ,P.FirstName
    ,P.LastName
    ...etc.    
FROM people P
Run Code Online (Sandbox Code Playgroud)

然后我想我会在所有列上执行FIRST()聚合函数,但是这也感觉不对.从语法上讲,我在这里做错了吗?

更新: 只是想注意:这些记录是基于上面列出的非密钥/非索引字段ID的重复记录.ID是一个文本字段,虽然具有相同的值,但它与导致该问题的其他数据的情况不同.

sql t-sql sql-server join greatest-n-per-group

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

ASP.NET MVC将原始HTML从Controller传递到View

我已经对这个问题感到头疼了几天,我不确定这是否是我的环境或代码本身的问题,这是基于ASP.NET MVC(尽管我有5年的C#经验).我正在使用最新的Win7x64和VS 2008的干净安装以及所有补丁.

我有一个存储在数据库表中的原始HTML,它由控制器根据我无法控制的一些规则有选择地加载.不幸的是,当尝试将值填充到控件中的视图数据时,如下所示:

ViewData["HTMLData"] = DAO.HTMLDataGet();
Run Code Online (Sandbox Code Playgroud)

当我看到输出时,它被转义/ HTML编码.我尝试使用以下所有这些似乎无法解决此问题:

<%: HttpUtility.HtmlDecode(ViewData["HTMLData"].ToString())%>
Run Code Online (Sandbox Code Playgroud)

和...

<%: Server.HtmlDecode(ViewData["HTMLData"].ToString())%>
Run Code Online (Sandbox Code Playgroud)

和...

<%: Html.Raw(ViewData["HTMLData"].ToString())%>
Run Code Online (Sandbox Code Playgroud)

...它从数据库表中抓取原始HTML就好了,但无论我尝试什么,它都会强制执行blasted编码.根据我在MSDN上阅读的内容,有一个关于HTML没有被正确解码的问题的脚注,其中包含空格(我的确如此).既然我怀疑我是唯一一个面对这个问题的人,我会向你们寻求一些想法.

我即将以我的方式克服我的方式,在视图中使用正则表达式来进行页面清理,但是我认为在我强行推断之前先从其他人那里得到一些建议会更好.谢谢你提前.

html c# asp.net-mvc viewdata decode

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