高难度问题 查询出来的结果为:日期 分类 数量12-1 牛 212-1 羊 112-2 猪 1如何将查询结果实现成如下呢?日期 牛 羊 猪12-1 2 1 012-2 0 0 1 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 简单的思路是创建两个TO,比如AnimaTO_1(String date,String type,String count);PrintTO_1(String date,String type,String count);然后重写两个TO的toString() method(); 我想你应该是问用sql如何实现吧?假设数据存在think_test表中:create table THINK_TEST( DATE_END VARCHAR2(20), TYPE VARCHAR2(10), TOTAL VARCHAR2(10));自己插入数据后select * from think_test;DATE_END TYPE TOTAL-------------------- ---------- ----------12-1 牛 212-1 羊 112-2 猪 1写一个sql如下:select date_end 日期, max(decode(type,'牛',cs,0)) 牛, max(decode(type,'羊',cs,0)) 羊, max(decode(type,'猪',cs,0)) 猪from( select t.date_end,t.type,sum(t.total) cs from think_test t group by t.date_end,t.type )group by date_end ;并执行:日期 牛 羊 猪-------------------- ---------- ---------- ----------12-1 2 1 012-2 0 0 1这个sql有个缺点.要提前知道转换后有多少列.对于预先知道固定列的情况可以用. 坦克死火了,为什么!!! Ireport的终极问题啊!有图有真相啊! 工程发布 高分帮忙? 哪位大侠帮我写个equals和HashCode的重载代码 显示一行空白表格,获取用户输入内容 能运行就给分 会二分法排序的进来指导指导! 关于static的用法,急(100分) 求快速加密和解密的算法? 学习JAVA用什么编译器最合适呢? 单击表头排序问题(java) 有一道java题关于循环嵌套的,我不明白为何执行结果是15?哪位高手帮帮我。
AnimaTO_1(String date,String type,String count);
PrintTO_1(String date,String type,String count);
然后重写两个TO的toString() method();
假设数据存在think_test表中:
create table THINK_TEST
(
DATE_END VARCHAR2(20),
TYPE VARCHAR2(10),
TOTAL VARCHAR2(10)
);
自己插入数据后
select * from think_test;DATE_END TYPE TOTAL
-------------------- ---------- ----------
12-1 牛 2
12-1 羊 1
12-2 猪 1写一个sql如下:
select date_end 日期,
max(decode(type,'牛',cs,0)) 牛,
max(decode(type,'羊',cs,0)) 羊,
max(decode(type,'猪',cs,0)) 猪
from(
select t.date_end,t.type,sum(t.total) cs
from think_test t
group by t.date_end,t.type
)
group by date_end ;
并执行:
日期 牛 羊 猪
-------------------- ---------- ---------- ----------
12-1 2 1 0
12-2 0 0 1这个sql有个缺点.要提前知道转换后有多少列.对于预先知道固定列的情况可以用.