日期:2014-05-17  浏览次数:20746 次

oracle查询的问题
数据库有张表如图所示
现在想用sql语句实现查询以后显示结果为
Oracle 数据库 SQL

------解决方案--------------------
如此简单的行转列 方法多的是 啊
1、

select name,
       sum(decode(ADDRESS, '北京', 1, 0)) 北京,
       sum(decode(ADDRESS, '上海', 1, 0)) 上海,
       sum(decode(ADDRESS, '南京', 1, 0)) 南京
  from t
 group by name


2、

select * from t pivot(count(address) for address in('北京', '上海', '南京'));