Sql server 2008 选择多条相同记录的第一行
我正在使用的查询有多个firstname,一个电子邮件地址的lastname。如何仅选择第一行而忽略其余行。 像 结果特蕾西·杜根td@test.com 我有多行相同的电子邮件地址。如何做到这一点Sql server 2008 选择多条相同记录的第一行,sql-server-2008,Sql Server 2008,我正在使用的查询有多个firstname,一个电子邮件地址的lastname。如何仅选择第一行而忽略其余行。 像 结果特蕾西·杜根td@test.com 我有多行相同的电子邮件地址。如何做到这一点 SELECT distinct f.email_address,TITLE,FIRST_NAME,LAST_NAME FROM #tempFinal F,temp htc where f.EMAIL_ADDRESS = htc.EMAIL_ADDRESS 按电子
SELECT distinct f.email_address,TITLE,FIRST_NAME,LAST_NAME FROM
#tempFinal F,temp htc
where f.EMAIL_ADDRESS = htc.EMAIL_ADDRESS
按
电子邮件地址
对结果集进行分区,并使用行编号
分配序列,然后进行筛选。使用order by
子句调整顺序标准
select firstname, lastname, email_address from (
select firstname, lastname, email_address, row_number() over
(partition by email_address order by firstname, lastname) as ranker
from table ) Z where ranker = 1
请定义“第一”的含义,例如:第一个是id,第一个是姓氏等
select firstname, lastname, email_address from (
select firstname, lastname, email_address, row_number() over
(partition by email_address order by firstname, lastname) as ranker
from table ) Z where ranker = 1