Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 用于解释SQL Server中两个表中数据的查询_Sql Server - Fatal编程技术网

Sql server 用于解释SQL Server中两个表中数据的查询

Sql server 用于解释SQL Server中两个表中数据的查询,sql-server,Sql Server,我正在为一家贷款公司做一个研究项目。他们希望在报告中创建一个表格,显示借款人是否为女性户主。标准是主要借款人必须是女性,不得有共同借款人 数据包含在两个表中。贷款表包含贷款编号pk、金额和其他非相关列。示例表如下所示: “借款人”表中有贷款编号、借款人职位、性别和其他非相关列。“性别”列包含“女性”或“男性”。借方位置列包含整数1或2,1为主要借方,2为共同借方。借款人表的样本如下所示: 当我运行查询时,我将得到一个如下所示的结果表: 问题是,我不确定如何在SQLServer中运行这种查询。有人

我正在为一家贷款公司做一个研究项目。他们希望在报告中创建一个表格,显示借款人是否为女性户主。标准是主要借款人必须是女性,不得有共同借款人

数据包含在两个表中。贷款表包含贷款编号pk、金额和其他非相关列。示例表如下所示:

“借款人”表中有贷款编号、借款人职位、性别和其他非相关列。“性别”列包含“女性”或“男性”。借方位置列包含整数1或2,1为主要借方,2为共同借方。借款人表的样本如下所示:

当我运行查询时,我将得到一个如下所示的结果表:


问题是,我不确定如何在SQLServer中运行这种查询。有人能帮我吗?

我不会帮你写查询,但我会帮你把脑袋绕过去。只需将其分解为简单的步骤:

您想要的结果包括一个唯一的行标题Yes或No和两个聚合,一个计数和一个总和

因此,您将按照女性标题列进行简单的分组,然后使用简单的聚合函数来获取其他两列

我想,棘手的部分是如何获得女性的头部立柱。您可以使用CASE表达式来检查:如果{some conditions}为true,则此列为Yes,否则为No

对于{Some Conditions}来说,其中一个显然是性别='女性'。另一个更棘手,您需要检查是否有另一行具有相同的贷款编号,其中性别='男性'。如果两个借款人中有一个是“男性”,那么哪一个是主要的还是次要的其实并不重要,因为你的要求是贷款中不能有男性借款人。您需要用一个子查询来检查这一点,我建议您为此检查EXISTS函数


然后把它们放在一起:女性标题列是返回Yes或No的CASE表达式。其他两列是COUNT和SUM函数,您需要根据CASE表达式进行分组。

您运行的查询是什么?请务必包括在内。如果我们没有你写的代码,很难看出你哪里出错了。没有代码。正如我提到的,我不知道如何编写这个查询。我只知道结果是什么。我就是不能把我的头放在这个上面。我建议先抬头看看。试一试,如果你没有成功,就在你的问题中加入你的尝试。存在是我解开谜团所需要的部分。谢谢