sql查询选择distinct from数据表以及相应的列值

sczxawaw  于 2021-06-20  发布在  Mysql
关注(0)|答案(2)|浏览(295)

我有一个包含4个字段的数据表 [UpdatedDate] , [DoggoName] , [DoggoType] 以及 [DoggoAge] . [DoggoName] 永远都是一样的 [DoggoType] 以及 [DoggoAge] 价值观。

UpdatedDate DoggoName   DoggoType        DoggoAge
1-Jan       a           Labrador         1
1-Jan       b           Yorkshire        2
1-Jan       c           German Shepherd  3
1-Jan       e           Bull Terrier     2
2-Jan       a           Labrador         1
2-Jan       d           Golden Retriever 1
2-Jan       e           Bull Terrier     2
2-Jan       f           Poodle           3
3-Jan       a           Labrador         1
3-Jan       b           Yorkshire        2
3-Jan       c           German Shepherd  3

我想选择不同的 [DoggoName] 介于2之间 [UpdatedDate] 以及相应的 [DoggoType] 还有“[狗狗]”。
到目前为止,我只找到了一个基本的sql查询来提取不同的 [DoggoName] . 在excel上打印,然后遍历 [DoggoName] 把另外两列画出来。我想知道是否有一个查询跳过了我繁琐的循环。
我的sql查询:

SELECT DISTINCT [DoggoName] 
FROM [DataTable] 
WHERE [UpdatedDate] BETWEEN #1-Jan-2018# AND #2-Jan-2018#

我的最终输出应该如下所示:

DoggoName   DoggoType        DoggoAge
a           Labrador         1
b           Yorkshire        2
c           German Shepherd  3
e           Bull Terrier     2
d           Golden Retriever 1
f           Poodle           3
2o7dmzc5

2o7dmzc51#

如果我确定你可以使用以下查询

SELECT DISTINCT [Doggoname], Doggotype, Doggo_age 
from datatable where [UpdatedDate] BETWEEN #1-Jan-2018# AND #2-Jan-2018#

此外,您还可以使用以下命令,因为每个doggotype都有一个可用的记录

Select distinct doggoname , max(doggotype) as doggotype, max(age) as age from 
datatable
where updateddate between #1-Jan-2018# AND #2-Jan-2018#
group by 1;
quit;
toe95027

toe950272#

你可以用 DISTINCTselect 你的期望栏。

SELECT DISTINCT DoggoName,DoggoName,DoggoAge
FROM DataTable

相关问题