如何拆分选择查询结果

时间:2012-03-01 15:19:35

标签: sql-server

我有一个选择查询,根据'agentid'从'policy'表中选择所有数据。

Select * from policy where agentid = ‘232’

此“政策”表格具有expirydate字段(日期范围为2012年12月31日至2013年2月1日),此时显示保单到期日期。每个日期都包含许多政策

现在我想根据到期日期将输出分成3个不同的列表。每个列表都需要包含唯一的record.ie.if列表1中存在的记录需要在其他2个列表中忽略

例如:我需要输出

Query one – list one 
FOI1334816 01/03/2012 Mr sharon peckham
TOI3454563 07/12/2012 Mr elizabeth goddard
RTY8383831 12/06/2012 Mr Natalie Door

Query 2 – list 2
BOC1334846 01/03/2012 Mr Natalie Nunes
LOI7853532 07/12/2012 Mr Door D
ASE4472894 12/06/2012 Mr Michelle Hill

Query 3 - list 3
CIL1334894 01/03/2012 Mr Maxine Skelton
BNM7488480 07/12/2012 Mr peckham Nunes
DER5357323 12/06/2012 Mr Graham Lee

如何更改选择查询。在执行3个单独的查询以获取此结果时没有问题。任何有关这方面的帮助将受到高度赞赏

提前致谢。

此致 SG

1 个答案:

答案 0 :(得分:0)

我认为我完全不了解你的问题。但是:

如果您正在运行SQLServer作为标记建议,您可以在空选项卡中单独编写3个查询(及其对应的WHERE子句),然后按F5。它将运行其中的三个,你将在结果窗口中将它们分开。

例如:

Select * from policy where agentid = ‘232’
Where expiryDate < getdate()

Select * from policy where agentid = ‘232’
Where expiryDate > getdate()

您将有2个分隔查询结果。如果你想要3只输入三。如果Where子句将同一列排除在之间或者a&lt;或者&gt;,99%以上在多于1个查询中没有相同的记录。

希望这会有所帮助......