`

SELECT CASE WHEN 的用法

 
阅读更多

1.SELECT CASE WHEN 的用法
      select 与 case结合使用最大的好处有两点,一是在显示查询结果时可以灵活的组织格式,二是有效避免了多次对同一个表或几个表的访问。下面举个简单的例子来说明。例如表 students(id, name ,birthday, sex, grade),要求按每个年级统计男生和女生的数量各是多少,统计结果的表头为,年级,男生数量,女生数量。如果不用select case when,为了将男女数量并列显示,统计起来非常麻烦,先确定年级信息,再根据年级取男生数和女生数,而且很容易出错。用select case when写法如下:
SELECT  grade, COUNT (CASE WHEN sex = 1 THEN 1  /*sex 1为男生,2位女生*/
                                            ELSE NULL
                                            END) 男生数,
                            COUNT (CASE WHEN sex = 2 THEN 1
                                            ELSE NULL
                                            END) 女生数
    FROM students GROUP BY grade;

分享到:
评论

相关推荐

    oracle case when 语句的用法详解

    1. CASE WHEN 表达式有两种形式 代码如下:–简单Case函数 CASE sex ... CASE WHEN 在语句中不同位置的用法2.1 SELECT CASE WHEN 用法 代码如下:SELECT grade, COUNT (CASE WHEN sex = 1 THEN 1 /*sex 1为男生,2位

    case when和sum case when 写法及拼接字段

    ### Case When 用法 在 SQL 查询语言中,`CASE WHEN` 结构是一种非常有用的工具,可以用来根据条件返回不同的值。它的工作原理类似于编程语言中的 `if...else` 语句,但在 SQL 中用于创建动态列或进行复杂的条件...

    Oracle_case_when_用法

    ### Oracle CASE WHEN 用法详解 #### 一、概述 在 Oracle 数据库中,`CASE WHEN` 表达式提供了一种在 SQL 查询中实现条件判断的方法,这使得开发人员能够在不使用 PL/SQL 的情况下编写更为灵活和复杂的查询语句。`...

    SQL Server中Case 的不同用法

    以下是对CASE关键字在SQL Server中不同用法的详细解释: 1. **在SELECT语句中的基本用法**: CASE表达式通常在SELECT语句中用来根据特定条件为数据列创建新的计算字段。例如,你可以根据书籍的价格范围给价格打...

    Case_When用法

    标题《Case_When用法》为我们提供了一个深入学习SQL中Case表达式使用方法的契机。在SQL中,Case表达式是一个条件分支结构,允许在查询中进行条件判断,并基于条件返回不同的结果。该表达式分为两种格式:简单Case...

    SQL中Case语句用法讨论_BJ

    SUM(CASE WHEN sex = '2' THEN population ELSE 0 END) AS female_population FROM Table_A GROUP BY country; ``` 2. **数据清洗与转换**:`Case`语句可以帮助在数据预处理阶段对特定字段进行逻辑判断和值转换...

    sql中的case用法

    SQL 中 Case 用法 Case 语句是 SQL 中一种强大的语句,用于根据不同的条件执行不同的操作。它可以用来实现复杂的逻辑操作,并且可以与其他 SQL 语句结合使用以实现更加复杂的查询。 SQL 中 Case 语句有两种格式:...

    sql case when exists not exists in not in

    在SQL查询中,`CASE WHEN`、`EXISTS`、`NOT EXISTS`以及`IN`和`NOT IN`是常用的操作符,它们用于处理复杂的条件判断和数据筛选。这些概念对于理解和编写高效的SQL语句至关重要,尤其是在数据分析和数据库管理中。 `...

    SQL__case_when_then_的用法

    SQL__case_when_then_的用法

    MySQL的CASE WHEN语句的几个使用实例

    在这个实例中,我们将深入理解如何使用CASE WHEN,并通过几个具体的例子来演示其用法。 首先,我们来看一个简单的使用CASE WHEN进行字符串替换的例子。在这个示例中,我们有一个名为sales的表,其中包含了category...

    MySQL性能优化的最佳21条经验

    9. **使用缓存**:MySQL的Query Cache可以缓存SELECT结果,减少对数据库的访问。但需注意更新频繁的表可能不适合启用此功能。 10. **适当调整MySQL配置**:如增大innodb_buffer_pool_size,缓存更多数据和索引,...

    CASE的用法 (Transact-SQL)

    ### CASE的用法 (Transact-SQL) #### 概述 `CASE` 是 Transact-SQL 中一个非常重要的关键字,用于根据不同的条件返回不同的结果。它支持两种主要的格式:简单表达式和搜索表达式。这两种格式都能有效地帮助开发者...

    mysql存储过程之case语句用法实例详解

    简单CASE语句主要用于比较一个表达式(case_expression)与一系列预定义的值(when_expression)。基本语法如下: ```sql CASE case_expression WHEN when_expression_1 THEN commands WHEN when_expression_2 ...

    MySQL中使用case when 语句实现多条件查询的方法

    `CASE WHEN`语句通常用于SQL查询中的`SELECT`, `WHERE`, `HAVING`等子句中,它允许我们根据不同的条件返回不同的值。基本结构如下: ```sql CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 .....

    SQL中case语法的使用

    除了上述的基本用法之外,`CASE`语句还可以在更复杂的场景中发挥作用,比如动态生成列名、条件筛选等。 ##### 示例3: 动态列名 有时我们需要根据某些条件动态生成列名,这可以通过嵌套`CASE`语句实现: ```sql ...

    SQLsevrer CASE用法

    SUM(CASE WHEN sex = '1' THEN population ELSE 0 END) AS male_population, SUM(CASE WHEN sex = '2' THEN population ELSE 0 END) AS female_population FROM Table_A GROUP BY country; ``` 这里,`CASE` ...

    sql 中 case when 语法使用方法

    在SQL查询中,`CASE WHEN`常常用于根据不同的条件返回不同的值,或者在`SELECT`, `WHERE`, `GROUP BY`, `ORDER BY`等子句中进行复杂的逻辑操作。 首先,让我们了解`CASE WHEN`的基本语法。在一个普通的`SELECT`语句...

    SQL跨库复制数据、case分类用法、分时段查询

    2. CASE分类用法: `CASE`表达式在SQL中用于条件判断和数据分类。在给出的示例中,`CASE`被用来根据温度范围(wj)将数据分为14个类别: ``` SELECT COUNT(wj), CASE WHEN wj > 0 AND wj WHEN wj > 11.9 AND...

    sql学习之CASE WHEN THEN ELSE END的用法

    在SQL语言中,`CASE WHEN THEN ELSE END`结构是一种强大的条件判断工具,它允许你在查询中根据特定条件执行不同的逻辑。这个结构可以在`SELECT`、`WHERE`、`HAVING`、`UPDATE`和`INSERT`等语句中使用,以实现复杂的...

Global site tag (gtag.js) - Google Analytics