怎么循环比较字段内容的大小?
表名TABLE1
业务号 材料名称 页号
1 申请表 1
1 早请表 2
1 申请表 3
1 审核表 4
1 审核表 5
1 身份证 6
1 证明材料 7
2 ......
3 ....
即业务号相同的行中,某种材料名称可能有好几页
现在想做报表打印其目录,比如想打印业务号为1的目录
申请表 1-3
审核表 4-5
身份证 6
证明材料 7
这段代码该怎么写?
[解决办法]
select 材料名称,min(页号)+ '- '+max(页号) from table1 group by 业务号,材料名称 order by 业务号,材料名称
[解决办法]
access:
select 材料名称,iif(min(format(页号))=max(format(页号)),min(fromat(页号)),min(format(页号))+ '- '+max(format(页号))) as 页号
from tb
group by 材料名称
order by iif(min(format(页号))=max(format(页号)),min(fromat(页号)),min(format(页号))+ '- '+max(format(页号)))
SQL数据库,改format函数为cast
[解决办法]
忘记转换了
convert(varchar(10),min(页号))+ '- '+convert(varchar(10),max(页号))
[解决办法]
要加上判断,ORACLE没用过,如果可以用case的话:
select 材料名称,
case when min(页号)=max(页号)
then min(页号)
else to_char(min(页号)) || '- ' || to_char(max(页号)) end
from tb
group by 材料名称