首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据位值选择DISTINCT

根据位值选择DISTINCT
EN

Stack Overflow用户
提问于 2020-06-03 11:29:15
回答 1查看 125关注 0票数 0

我在Server中有一个表

作业

代码语言:javascript
复制
ID   Name   Job    ControlValue
----------------------------------------
1    Seth   IT     0
2    Seth   IT     1
3    Maria  Farmer 1
4    Maria  Farmer 1
5    Maria  Farmer 1

这是我的查询

代码语言:javascript
复制
SELECT DISTINCT Name, Job
  , CASE WHEN ControlValue IS 1 THEN 'Present' WHEN ControlaValue IS 0 THEN 'Not Present'
FROM Jobs

这是上面查询的输出。

代码语言:javascript
复制
Name   Job    ControlValue
----------------------------------------
Seth   IT     Not Present
Seth   IT     Present
Maria  Farmer Present

我想问的是:

是否有一种方法可以检查是否存在带有Not Present1ControlValue,然后只显示一行与的结果

所以输出将是

代码语言:javascript
复制
Name   Job    ControlValue
----------------------------------------
Seth   IT     Not Present
Maria  Farmer Present
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-03 11:32:05

你想要的是MINCAST/CONVERT

代码语言:javascript
复制
SELECT [Name],
       Job,
       CASE MIN(CONVERT(tinyint,ControlValue)) WHEN 0 THEN 'Not Present' ELSE 'Present' END AS ControlValue
FROM dbo.YourTable
GROUP BY [Name],
         Job;

这里需要CAST/CONVERT的原因是您不能对bit数据类型执行聚合功能。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62171748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档