预先感谢您可能有任何建议。

这是我第一次尝试从列式数据库中进行查询,因此对于如何编写能够提供所需结果的查询我不确定。

我要查询的表(“ census_data”)具有以下类型的值(总共41行):

plan_id ssn_key        field    value
1       111111111      DOB      1732-02-22
1       111111111      DOR      1830-11-02
1       111111111      FNAME    GEORGE
1       111111111      LNAME    WASHINGTON
1       863283322      DOR      2020-03-22

作为FYI,在某些情况下,我们可能只有某人的SSN和DOB,而没有他们的FNAME,LNAME,DOR(退休日期)等。

我们现在正在使用虚拟数据,并尝试在开始使用大型数据集时对查询进行处理。

我们知道在某些情况下,在实际数据集中,会有不合逻辑的数据,例如将来发生的退休日期('DOR')(假设我们的规则是,过去必须出现'DOR'值)为了使其有效)。

我们编写了一些查询,这些查询已为我们提供了我们想要的结果,例如:

1)给我们所有人FNAME ='GEORGE'和LNAME ='WASHINGTON'的生日

select [value] from [testdb3].[dbo].[census_data]
where ssn_key in (select ssn_key from census_data where field='LNAME' 
and value='WASHINGTON' and ssn_key in
(select ssn_key from census_data where field='FNAME' 
and [value]='GEORGE')) AND field='DOB' 

2)给我们所有拥有退休日期的人的SSN

select [plan_id], [ssn_key], [field], [value] 
from [testdb3].[dbo].[census_data] as 
cd where cd.field = 'DOR'and value > GETDATE()

提醒一下,SSN值在表的第二列中,而DOB,FNAME,DOR,LNAME等的值都在表的第四列中。

这就是我们陷入困境的地方。 我们正在尝试编写一个查询,为我们提供退休日期大于今天的任何人的名字。 我们花了几个小时来尝试一些可行的方法,但到目前为止却是空的。 如果有人对代码是什么有任何想法,请告诉我,我将不胜感激。 谢谢。

  ask by Hans translate from so

本文未有回复,本站智能推荐:

2回复

将名称添加到周列表

如何从另一个带有名称的表中添加每周的名称列表(按 id 重复) Weeknumb与id不同 结果: 我还有一张有名字的桌子 需要:
1回复

将名称的中间值删除到其他列中

我一直在努力在MS SQL Server中将一些名称拆分为几列,剩下的是姓氏和中间值(John Smiths Smithsons) 因此,这是我想做的,我有几个示例: 因此,我有3种变体,可以放在字符串中的任意位置。 我想做的是从“姓氏”列中删除这些值,然后将它们移到“中间”列中,这样
2回复

将名称之间的链接列表合并为一列

我目前有两个表用于存储如下所示的实体之间的关系: Entity_Table :包含实体的名称和类型(主或次) 链接表:包含实体之间的关系信息 附加信息: 大约有 5000 个实体,每个实体可以有多个链接,有些没有链接 这些表由外部 C++ 代码使用我在寻找什么:一个查询,将返回所有实体及其链接实
2回复

将名称存储为“sysname”而不是“nvarchar(128)”有什么好处?

我希望创建一个表来存储有关存储过程的信息。 我需要存储SP_Name 。 我原来的计划是使用SP_Name NVARCHAR(128) NOT NULL 。 从过程I我将使用OBJECT_NAME(@@PROCID)函数来获取SP_Name列的值。 此technet不提供有关SYSN
2回复

如何在sqlserver中将名称分成几行?

我想要一个名称作为参数传递给存储过程,当我执行这个存储过程时,它应该将名称分成几行。 例如,如果通过 'Peter',输出应该是磷电子吨电子 r
5回复

SQL中的匹配列表

我正在建立一个包含顾问资料的系统。 在此系统中,每个顾问都可以选择他或她拥有的证书。 现在,我正在扩展系统,以便在顾问获得某些认证时包含标题。 有趣的表是: 例如,假设我们有一个ID为1的标题MCSA。 该标题所需的证书是ID为1和2的证书。TitleCertifications-t
1回复

使用SQLServer将名称和标题分成单独的列

我构造了SQL Server代码,该代码将从表中提取出名字,姓氏,中间名首字母和标题作为单独的项目,这很好,但是在没有中间名首字母的情况下我遇到了问题: 工作: 无法运作: 我当前使用的代码: 任何帮助将不胜感激! 谢谢-马特
2回复

如何在SQL中将名称拆分为名字和姓氏

我有一个包含名字和姓氏的表,如下所示 First_Name LAST_NAME 我需要更正在Last_name列中具有完整名称的某些行。 我想要的输出是:- First_Name LAST_NAME 提前致谢!