易截截图软件、单文件、免安装、纯绿色、仅160KB

一条SQL 语句

我有个表TABLE ,里面有个字段A ,他的记录是ABCD0001,ABCD0002,ABCD0005,ABCD0003。。。。
我想用条语句查询出最后4位数最大的那条记录的后四位数,这个语句应该怎么写?各位拜托了

select * from ta
where substr(A,length(A)-4,length(A))
in (select max(substr(A,length(A)-4,length(A))) from ta)

http://topic.csdn.net/u/20090910/15/7300c66d-0829-4608-b287-4eaf1a69274f.html
参考下 上面的链接

发错了 ,不好意思

select * from
(select substr(a,-4) from table
  order by substr(a,-4) desc)
where rownum=1

这样应该就可以了
select max(substr(a,-4)) from table

引用
这样应该就可以了
select max(substr(a,-4)) from table


很强大,比我的语句优化的多

lz正解

你的记录是8位数,所以以下:
SELECT SUBSTR('ABCD5678',5,4) from DUAL;
SELECT SUBSTR('ABCD5678',length('ABCD5678')-3,4) from DUAL;
SELECT SUBSTR('ABCD5678',length('ABCD5678')-3,length('ABCD5678')) from DUAL;
SELECT MAX(SUBSTR('ABCD5678',-4)) from DUAL;


在substr 前 套个 max即可


引用
这样应该就可以了
select max(substr(a,-4)) from table

这个真的很强大

多谢各位


相关问答:

sql server 存储过程循环赋值的问题

小弟是个新手 现在有个问题一直不能解决
例如
procedure produce_proc
    @p001 nvarchar(8000),
    @p002 nvarchar(8000),
    @p003 nvarchar(8000),
  & ......

总会碰到怪的问题,sql问题

sql2005
select *from v_ddxx where d_sfsc='0' and (g_ssbm='1001' or g_ssbm='1002') and (xxf>0 and  xxfwzf <>0 ),执行速度慢的要死,但是如果把(xxf>0 and  ......

SQL语句效率问题 - 其他数据库开发 / 其他数据库

大家帮忙看看这2个sql语句哪个查询的速度更快点。谢谢帮忙。比较着急。在做性能测试。
select * from
  表A LEFT OUTER JOIN 表B ON (表A.id || ' ' =表B.id) ,表C , 表D, 表E
Where其他条件
select * ......

SQL字段,横向展开

请问各位,如何将SQl中,某字段中的值横向展开呢,
CASE WHEN

具体问题具体分析,看你要怎么展开

姓名  科目      成绩
张三  英语    90
李四  英语&nb ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号