一个SQL查询话语,想了好久,没弄好
一个SQL查询语句,想了好久,没弄好。
有一个表User
Name Type
AA 进
AB 出
AA 出
AC 进
AC 出
AC 进
AD 进
想通过一个查询语句得到以下结果
Name 进 出
AA 1 1
AB 0 1
AC 2 1
AD 1 0
------解决思路----------------------
使用case
------解决思路----------------------
随手敲的,没验证过,应该问题不大
------解决思路----------------------
+1
------解决思路----------------------
select Name,
sum(case type when '进' then 1 else 0 end ),
sum(case type when '出' then 1 else 0 end '出')
from TableName
group by Name
------解决思路----------------------
好像oracle不支持中文字段名。微软系应该没问题。
有一个表User
Name Type
AA 进
AB 出
AA 出
AC 进
AC 出
AC 进
AD 进
想通过一个查询语句得到以下结果
Name 进 出
AA 1 1
AB 0 1
AC 2 1
AD 1 0
------解决思路----------------------
使用case
------解决思路----------------------
select Name, sum(进) '进', sum(出) '出' from
(
select Name,
case type when '进' then 1 else 0 end '进',
case type when '出' then 1 else 0 end '出'
from TableName
) tmp
group by 进, 出
随手敲的,没验证过,应该问题不大
------解决思路----------------------
+1
------解决思路----------------------
select Name,
sum(case type when '进' then 1 else 0 end ),
sum(case type when '出' then 1 else 0 end '出')
from TableName
group by Name
------解决思路----------------------
好像oracle不支持中文字段名。微软系应该没问题。