行转列,使用case when then
select
date,
sum(case c.type when 'try-pay' then c.sum else 0 end ) as 'try-pay',
sum(case c.type when 'pay-real' then c.sum else 0 end )as 'pay-real',
sum(case c.type when 'pay-success' then c.sum else 0 end )as 'pay-success',
sum(case c.type when 'pay-failure' then c.sum else 0 end )as 'pay-failure',
sum(case c.type when 'notify-input' then c.sum else 0 end )as 'notify-input',
sum(case c.type when 'normal-query' then c.sum else 0 end )as 'normal-query'
from
(SELECT sum(f_count) as sum ,f_type as type ,f_date as date FROM t_log_analyse
group by f_type,f_date order by f_date desc)
as c
group by date
分享到:
相关推荐
### SQL数据库转Access SQL语句改写:Case When Then When Then Else End #### 知识点一:SQL CASE WHEN THEN 结构与Access IIF及SWITCH函数对比 在进行SQL到Access SQL的转换过程中,一个重要的知识点是了解如何...
在 SQL 查询语言中,`CASE WHEN` 结构是一种非常有用的工具,可以用来根据条件返回不同的值。它的工作原理类似于编程语言中的 `if...else` 语句,但在 SQL 中用于创建动态列或进行复杂的条件判断。 #### 基本语法 ...
在SQL Server 2000中,我们可以使用CASE WHEN语句和MAX聚合函数来实现行转列操作。下面是一个示例代码: ```sql select 姓名 as 姓名, max(case 课程 when '语文' then 分数 else 0 end) 语文, max(case 课程 ...
标题与描述均提到“SQL行转列解决方案”,这主要指的是在SQL中将数据表...总之,行转列是SQL数据处理中的一项重要技能,通过熟练掌握`CASE`语句、动态SQL以及聚合函数的使用,可以高效地满足各类数据整理和分析的需求。
在不支持Pivot或者不想使用动态SQL的情况下,可以利用CASE语句实现行转列。这种方法比较繁琐,需要为每列写一个CASE语句,但依然能达成目的。 ```sql SELECT ProductID, MAX(CASE WHEN Year = 2018 THEN Sales...
sqlserver 动态行专列 避免了数据列过多的时候大量的使用case when then...... 原数据 : UserName Subject Score Nick 语文 80 Nick 数学 90 Nick 英语 70 Nick 生物 85 Kent 语文 80 Kent 数学 90 Kent ...
T-SQL(Transact-SQL)是微软SQL Server所使用的扩展SQL语言,它提供了丰富的数据处理功能,包括行转列。在SQL Server中,有两种主要的方法可以实现这一转换: 1. 使用CASE语句: CASE语句是SQL中一个非常强大的...
在SQL中,将数据从行转换为列的操作称为“行转列”。这一操作在实际业务场景中非常常见,比如在报表生成、数据分析等场景下,往往需要将原本纵向排列的数据转化为横向显示,以便于分析或者展示。根据题目提供的信息...
根据提供的标题、描述、标签及部分内容,本文将详细介绍SQL中实现列转行及行转列通用存储过程的具体方法,特别是针对Microsoft SQL Server版本的应用场景。 ### 标题解析:SQL列转行及行转列的通用存储过程 该标题...
一条sql语句就能让你case when then怎么用,什么时候用
### SQL语句实现表的行列转换,行转列,列转行 在处理数据库时,我们经常需要对数据进行各种变换以适应不同的分析需求。其中,“行列转换”就是一种非常实用的功能,它可以帮助我们将表中的行数据转换为列数据,...
然后,使用`CASE`语句配合`MAX`函数进行静态行转列: ```sql SELECT id, MAX(CASE name WHEN '姓名' THEN dr ELSE '0' END) AS '姓名', MAX(CASE name WHEN '性别' THEN dr ELSE '0' END) AS '性别' FROM dbo....
sql语句将行转换成列 declare @sql varchar(8000) set @sql = 'select 物料代码' select @sql = @sql + ',sum(case 地区 when '''+地区+''' then 数量 end) ['+地区+']' + ',sum(case 地区 when '''+地区+'''...
在Oracle数据库中,`WHERE`子句是SQL查询语句的一部分,用于指定查询条件,而`CASE WHEN`语句则是一种条件表达式,允许我们基于不同的条件返回不同的值。将`CASE WHEN`嵌套在`WHERE`子句中,可以实现更复杂的逻辑...
### SQL 行转列详解 #### 一、什么是行转列? 在数据库操作中,“行转列”(Pivot)是一种常见的数据变换需求。它指的是将原始数据表中的某些字段从行的形式转换为列的形式,从而达到不同的数据展示或分析目的。...
SQL__case_when_then_的用法
### MySQL中的Case When语句详解 ...此外,`CASE WHEN`还可以与其他SQL语句结合使用,比如聚合函数、子查询等,以满足更复杂的业务需求。希望本文能帮助你更好地理解和使用MySQL中的`CASE WHEN`语句。