小编jsm*_*ith的帖子

在另一个表中不存在记录的连接上选择null

我有一个问题,在一堆失败的尝试后我似乎无法弄清楚.

我有三个表需要为某些报告进行连接,而在第二个表中可能不存在记录.如果记录不存在,我需要为来自第3个表的数据报告空值.

在最基本的形式,这里是表结构(它是一个调查)

Table A (Survey)
-----------------------
SurveyNumber | SurveyId
016243023708   1152010

Table B (Response)
----------------------------------
SurveyId | QuestionId | ResponseId
1152010    1279235      486

Table C (Response Values)
--------------------
ResponseId | Value
486          Yes

解释为什么表B中可能不存在记录只是因为在调查完成时插入了值.如果用户离开调查而未完成(他们可以稍后返回),则表B中的记录将不存在.表C中的值应报告为null.

如果它更容易,我需要专门针对questionid 1279235进行报告.

这是我到目前为止提出的查询(除了表b中缺少记录的问题1279235之外,它向我展示了所有内容).

SELECT      A.SurveyNumber, A.SurveyId, B.QuestionID, C.Value
FROM        tblA A
LEFT JOIN   tblB B
        ON  A.SurveyId = B.SurveyId
LEFT JOIN   tblC C
        ON  B.ResponseId = C.ResponseId 
WHERE       B.QuestionId = 1279235
Run Code Online (Sandbox Code Playgroud)

如果需要,我可以提供更多说明.

提前致谢

sql sql-server join

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

在C#中使用继承

所以我刚接受了面试,他们给了我一份他们希望我事先处理的任务清单.我完成了除了一个以外的所有任务,并且想知道是否有人能够对这个问题有所了解.

问题就是这样的

  1. 创建一个名为Human的类,为类提供一个公共属性HairColor和一个公共方法Talk(),当调用它时,返回"我是一个人".
  2. 创建另一个名为child的类,它继承自Human并覆盖talk方法并返回"我是小孩".
  3. 创建一个覆盖谈话和输出"我是男性"的男女班级.和"我是女性."
  4. 更改子级和人类层次结构以适当地包括男性和女性并输出正确的字符串.

我完成了任务1-3,但是在问题4上被困了.我在过去的继承工作经历中并没有做太多的事情,这个问题对我来说似乎有点模糊.我向雇主解释了这一点,他们看起来还不错,但没有告诉我应该怎么做.它现在一直困扰着我,我想知道它是如何完成的.

.net c# inheritance hierarchy

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

使用object vs Object声明对象集合

可能重复:
C#中的字符串与字符串

我有一个简单的场景,我将网格绑定到将存储在列表中的对象集合.我想知道的问题是,声明对象列表的最佳做法是什么?

IList<object> myCollection;
Run Code Online (Sandbox Code Playgroud)

要么

IList<Object> myCollection;
Run Code Online (Sandbox Code Playgroud)

我已经阅读了一些代码标准文章,很多人建议使用String vs string,所以我想知道同样的规则是否适用于此,为什么?两种方法(如果有的话)有什么不同,以及以一种方式与另一种方式相比,有什么样的性能提升.

此网格是自定义控件的一部分,其中列表作为将绑定到网格的属性公开.

c# collections declaration object

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

标签 统计

c# ×2

.net ×1

collections ×1

declaration ×1

hierarchy ×1

inheritance ×1

join ×1

object ×1

sql ×1

sql-server ×1