当前位置: 首页 > 面试题库 >

SQL条件列数据在select语句中返回

陆洛城
2023-03-14
问题内容

这是问题的简化:我有一个看起来像这样的选择:

Select ID, Assignee, WorkStream from assignees;

并返回的数据快照看起来像这样

1|Joe Soap|Internal

2|Mrs Balls|External

我想做的是,如果工作组是内部的,则选择不显示受让人的名称。而是显示工作流。

因此,例如,我想要实现的结果将是这样的:

1|Internal|Internal

2|Mrs Balls|External

我希望这是有道理的?基本上是一个条件选择,可以检测某个列是否包含某个值,然后用[whatever]替换另一个列的值。

提前致谢!

编辑我想实现这样的事情:

Select ID, if (workstream='internal' select Workstream as Assignee - else - select Assignee as Assigneee), WorkStream from assignees;

问题答案:

您没有提到您的DBMS,但是CASE在我所知的所有主要DBMS中都可以使用搜索到的语句。

SELECT  ID
        , CASE WHEN WorkStream = 'Internal'
               THEN WorkStream
               ELSE Assignee
          END AS Assignee
        , Workstream
FROM    assignees

参考:MSDN

案子

计算条件列表,并返回多个可能的结果表达式之一。



 类似资料:
  • 在SQL中,语句用于从数据库中的表中查询或检索数据。 返回存储在表中的数据,返回的结果称为结果集。 语法 这里,表达式是要从中选择数据的表的字段名称。使用以下语法选择表中可用的所有字段: 假设表有以下行记录 - EMP_ID EMP_NAME CITY PHONE_NO SALARY 1 Kristen Chicago 9737287378 150000 2 Russell Austin 9262

  • SELECT 语句用于从数据库中选取数据。 SQL SELECT 语句 SELECT 语句用于从数据库中选取数据。 结果被存储在一个结果表中,称为结果集。 SQL SELECT 语法SELECT column_name,column_name FROM table_name; 与SELECT * FROM table_name; 演示数据库 在本教程中,我们将使用 RUNOOB 样本数据库。 下面

  • 我想在C#中使用组合框对条件进行数据过滤,所以我使用了这个存储过程: 参数由7个组合框补偿,但问题是我必须选择(所有)参数值来显示数据,这不是必需的,我想要的是显示数据,一旦我从任何组合框中选择(任何)值

  • 问题内容: 我想重命名表达式结果中的列。当然,以下操作无效: 由于我是SQL的新手,我想我只是缺少一个会导致答案的概念,工具或关键字。向正确方向的提示将不胜感激。谢谢! 更新 我正在寻找一种实现此目的的通用方法,并且特定于MySQL的技术绝对可以。 简而言之,我正在编写一个工具,用于将MySQL查询的结果“导出”到Google Spreadsheets(通过Google Data API)。有些查

  • 在 T-SQL 中,SELECT 语句用于从数据库表中获取数据,并以结果的形式返回数据。这些表在 SELECT STATEMENT 中称为结果集。 Select语句的语法: 其中 column1、column2、column N 是要获取其值的表的字段。如果获取该表中所有可用的字段,那么需要使用给定的语法—— 例子: 考虑具有以下记录的 CUSTOMERS 表- 以下命令是一个示例,它将获取 CU

  • 通过 SQL,您可以从一个表复制信息到另一个表。 SELECT INTO 语句从一个表复制数据,然后把数据插入到另一个新表中。 SQL SELECT INTO 语句 SELECT INTO 语句从一个表复制数据,然后把数据插入到另一个新表中。 MySQL 数据库不支持 SELECT ... INTO 语句,但支持 INSERT INTO ... SELECT 。 当然你可以使用以下语句来拷贝表结构