你想想
group by 是个组函数比如
select a,b from table group by b;
这句语句,b值为1的列有很多,a又各不相同,那么a应该显示什么呢
所以使用了group by那么,select 后面要么跟group by 的字段或者跟组函数
group by 是个组函数比如
select a,b from table group by b;
这句语句,b值为1的列有很多,a又各不相同,那么a应该显示什么呢
所以使用了group by那么,select 后面要么跟group by 的字段或者跟组函数
解决方案 »
- 请问一个sql语句,关于相邻的相同字段相减的问题
- 在客户端用 export 来dump文件,遇到error,求解
- 在线求助!!急!关于列索引的问题。
- 在oracle中怎么设置双主键啊?
- Oracle->Sql Server问题(高手帮忙)
- 在线求救!在pl/sql中如何将一个char数字字符串转换成integer的整数?
- Oracle 8i安装完成后,在DOS窗口输入svrmgrl命令,却得到ORA-12560: TNS :协议适配器错误
- 一个简单的Oracle问题,高手快进来拿分啊
- 关于在Oracle数据库服务器如何提供下载一个excel文件型的大对象到本地?十万火急!三根鸡毛!
- 将excel导入oracle,数据显示异常
- 菜鸟求教:怎样使用多个数据库?
- pl\sql中为何不能调用其他用户中的存储过程
return varchar2
as
str varchar2(100);
cursor t_sor(v_id varchar2) is
select traintitle from train where trainid=v_id;
num number:=0;
begin
for v_sor in t_sor loop
if num=0 then
str:=v_sor.traintitle;
num:=num+1;
else
str:=str||','||v_sor.traintitle;
end if;
end loop;
return str;
end;
/
select sum(trainstatics.period * 24 * 60) as total_time,
trainid,get_title(trainid) as traintitle
from trainstatics
where usergroupid = 1
group by trainstatics.trainid
...
for v_sor in t_sor(p_id) loop
..
(select sum(trainstatics.period * 24 * 60) as total_time,trainid, from trainstatics
where usergroupid = 1
group by trainstatics.trainid) a,
(select traintitle,trainid
from train) b
where a.trainid=b.trainid
from trainstatics a, train b
where a.trainid = b.trainid AND usergroupid = 1
group by a.trainid, b.traintitle;这样的写法不是挺规范的吗?
在select列中尽量不要用select语句作为某个列,否则很讨厌,pl/sql 8.17都不支持。