product表
Product Version
H1000 1.0
H1000 1.1
H1000 1.2
H1000 2.0
H1000 2.1
H1000 3.0
H1001 1.0
H1001 1.1
…………………………………………
H100X x.x
有如上所示资料形态的oracle table,按用户需求希望抓取产品名加小版本最大版的资料,如下所示:
Product Version
H1000 1.2
H1000 2.1
H1000 3.0
H1001 1.1
…………………………………………
本来的想法,截版本小数点左和右两部分,对左部分循环,抓右部分最大值再输出,实际作业的复杂度太高,一句sql完成不了;
后来经提示,使用group by,明显工作量下降很多,这边记录下来做个以后的参考
select c.Product,c.xx1 ||'.'||c.xxx2 as Version from
(select b.Product,b.xx1,max(b.xx2) as xxx2 from
(select Product,substr(Version,1,instr(Version,'.')-1) as xx1,substr(Version,instr(Version,'.')+1) as xx2 from product) b
where b.xx1!='0' group by b.Product,b.xx1) c
order by Product,Version
分享到:
相关推荐
最大值SQL复合查询 最大值SQL复合查询最大值SQL复合查询最大值SQL复合查询最大值SQL复合查询
易语言SQL基本语句模块源码,SQL基本语句模块,SQL_查询,SQL_添加,SQL_更新,SQL_删除,SQL_删除表,SQL_清空表,SQL_取记录数,SQL_取平均值,SQL_取最小值,SQL_取最大值,SQL_取首记录字段值,SQL_取尾记录字段值,SQL_取总计...
如何用SQL排除重复结果只取字段最大值的记录?要求得到的结果(即是PID相同的记录只取ID值最大的那一条)。 代码如下:select * from [Sheet1$] awhere ID not exists (select 1 from [Sheet1$] where PID=a.PID and...
sql学习 同时取最大最小值的案例.sql
按某一字段分组取最大(小)值所在行的数据
数学函数 abs(numeric_expr) 求绝对值 ceiling(numeric_expr) 取大于等于指定值的最小整数 exp(float_expr) 取指数 floor(numeric_expr) 小于等于指定值得最大整数 pi() 3.1415926............
15、说明:选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.) select a,b,c from tablename ta where a=(select max(a) from ...
SQLServer和Oracle的常用函数对比 共计45点 1.绝对值 2.取整(大) 3.取整(小) 4.取整(截取) 5.四舍五入 6.e为底的幂 7.取e为底的对数 8.取10为底对数 9.取平方 10.取平方根 11.求任意数为底的幂 12.取...
最好的sql教程 轻举技术之“纲”,张合用之“目”,锻造SQL高可用性数据库应用指南从理论到实践,凝聚SQL主流数据库最前沿的技术要领,本书将深入浅出讨论。 本书特色:主要介绍SQL的语法规则及在实际开发中的应用...
表:t_test -------------------------------------- id(int) cost(int) des Autoid(id) -------------------------------------- 1 10 aaaa 1 1 15 bbbb 2 1 20 cccc 3 ...取每一类id中cost最大的纪录
–按某一字段分组取最大(小)值所在行的数据 代码如下: /* 数据如下: nameval memo a 2 a2(a的第二个值) a 1 a1–a的第一个值 a 3 a3:a的第三个值 b 1 b1–b的第一个值 b 3 b3:b的第三个值 b 2 b2b2b2b2 b 4 b4b4 b ...
如果你有看到这篇,会看到Insus.NET在SQL Server2008使用最简单的方法取到午夜时间值。
如果使用SQL Server验证的登录,它最大的好处是很容易通过Enterprise Manager实现,最大的缺点在于 SQL Server验证的登录只对特定的服务器有效,也就是说,在一个多服务器的环境中管理比较困难。使用SQL Server...
11.1.4 产品销售额统计 11.1.5 统计销售记录的份额 11.1.6 为采购单分级 11.1.7 检索所有重叠日期销售单 11.1.8 为查询编号 11.1.9 标记所有单内最大销售量 11.2 排序 11.2.1 非字段排序规则 ...
名" [ASC, DESC] -- ASC 小到大 DESC 大到小 (09) 函数........................................ ............... ......................................5 函数 AVG (平均) COUNT (计数) MAX (最大值) MIN ...
对Oracle共享池和缓冲区中的Sql必须要大小写都完全用上才能够匹配上 2.顺序问题 Oracle按照从右到左的顺序对数据表进行解析。因此From最后面的表为基础表,一般要选择记录数最少的表作为基础表。 对于Where...
SQL中的单记录函数 1.ASCII 返回与指定的字符对应的十进制数; SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual; A A ZERO SPACE --------- --------- --------- --------- ...
利用一条查询语句查出乘法表以级对一行数据N字段做MAX处理
本文是mysql 数据库 问题一 将表一的数据导入表二...在表中插入数据时,某一字段取数据库中该字段的最大值,并+1,这个问题很多人都说用存储过程什么的解决,其实使用insert 和 select 结合就可以很好的解决这个问题啊